Java 无bean映射表
我不确定标题是否正确。。。但这是我的问题 这是我的bean类Java 无bean映射表,java,hibernate,Java,Hibernate,我不确定标题是否正确。。。但这是我的问题 这是我的bean类 @Entity @Table(name = "Exercise") public class Exercise { private IntegerProperty exerciseID; private ObjectProperty<String> name; private ObjectProperty<ExerciseCategory> category; private O
@Entity
@Table(name = "Exercise")
public class Exercise {
private IntegerProperty exerciseID;
private ObjectProperty<String> name;
private ObjectProperty<ExerciseCategory> category;
private ObservableList<Parameter> parameters;
public Exercise(int exerciseID, String name, ExerciseCategory category){
this.exerciseID = new SimpleIntegerProperty(exerciseID);
this.name = new SimpleObjectProperty<>(name);
this.category = new SimpleObjectProperty<>(category);
parameters = FXCollections.observableArrayList();
}
public Exercise(){
this(0,null, null);
}
public Exercise(String name, ExerciseCategory category){
this(0, name, category);
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public int getExerciseID() {
return exerciseID.get();
}
public IntegerProperty exerciseIDProperty() {
return exerciseID;
}
public void setExerciseID(int exerciseID) {
this.exerciseID.set(exerciseID);
}
@Column(name = "name", nullable = false)
public String getName() {
return name.get();
}
public ObjectProperty<String> nameProperty() {
return name;
}
public void setName(String name) {
this.name.set(name);
}
@OneToOne
public ExerciseCategory getCategory() {
return category.get();
}
public ObjectProperty<ExerciseCategory> categoryProperty() {
return category;
}
public void setCategory(ExerciseCategory category) {
this.category.set(category);
}
public ObservableList<Parameter> getParameters() {
return parameters;
}
public void setParameters(ObservableList<Parameter> parameters) {
this.parameters = parameters;
}
}
我的问题是,我如何在练习课上绘制这个图?因为我不想做一个exerciseParameter类
谢谢大家! 这是一种
多对多
关系。您可以使用@ManyToMany
注释来完成此操作
在Employee
实体的getParameters
方法中添加以下注释
@ManyToMany(cascade = {CascadeType.ALL})
@JoinTable(name="ExerciseParameter",
joinColumns={@JoinColumn(name="ExerciseID ")},
inverseJoinColumns={@JoinColumn(name="ParameterID")})
并在参数
实体的getEmployees
方法中添加以下注释。(您没有提供参数
实体。我假设参数
类包含getEmployees
方法。)
您也可以使用参数实体吗
@ManyToMany(cascade = {CascadeType.ALL})
@JoinTable(name="ExerciseParameter",
joinColumns={@JoinColumn(name="ExerciseID ")},
inverseJoinColumns={@JoinColumn(name="ParameterID")})
@ManyToMany(mappedBy="parameters")