У меня проблема с моим приложением Spring Boot (используется hibernate).У меня есть следующие 3 лица.Когда я запускаю свое приложение, автоматически создается моя схема БД (именно то, что я хочу), НО для части FK и отношений.Где у меня должен быть FK, у меня просто есть столбец INT, который не ссылается ни на что ...
Пожалуйста, найдите ниже 3 сущностей и внизу внизу сгенерированную схему ...
PS: я использую MySQL.
Ингредиент
@Entity
@Table(name="ingredients")
public class Ingredient {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="name", length=50)
private String name;
@ManyToMany
@JoinTable(
name="recipe_ingredient",
joinColumns=@JoinColumn(name="ingredient_id"),
inverseJoinColumns=@JoinColumn(name="recipe_id"))
private List<Recipe> recipes;
++ getters and setters
Рецепт
@Entity
@Table(name="recipes")
public class Recipe {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="title", length=100)
private String title;
@Column(name="description", length=3000)
private String description;
@Column(name="short_presentation", length=200)
private String shortPresentation;
@Column(name="image_url", length=200)
private String imageUrl;
@ManyToMany
@JoinTable(
name="recipe_ingredient",
joinColumns=@JoinColumn(name="recipe_id"),
inverseJoinColumns=@JoinColumn(name="ingredient_id"))
private List<Ingredient> ingredients;
@Column(name="minutes")
private int cookingTimeInMinutes;
@ManyToOne(cascade={CascadeType.DETACH,CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH})
@JoinColumn(name="difficulty_id")
private Difficulty difficulty;
+ getters and setters
Сложность
@Entity
@Table(name="difficulties")
public class Difficulty {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="difficulty", length=50)
private String difficulty;
@OneToMany(mappedBy="difficulty",
cascade= {CascadeType.DETACH, CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH})
private List<Recipe> recipes;
+ getters and setters
application.properties
spring.jpa.hibernate.ddl-auto = update
Схема создания БД
Большое спасибо!