Hibernate不会在数据库中插入Vector的数据。 如何指示hibernate执行此操作?
我想要的是一张桌子" tbl_right"用外键" id_licence"这是指许可证。
我正在寻找并尝试超过一天的解决方案,但我找不到任何东西。 似乎没有其他人有类似的问题。
有人知道如何解决它吗?
这就是我正在谈论的课程:
@Entity
@Table(name = "tbl_licence")
public class Licence extends Vector<Right> implements ILicence {
public Licence(String description) {
this.description = description;
}
private int db_id;
private String description = "No description for Licence";
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID")
public int getDb_id() {
return db_id;
}
public void setDb_id(int db_id) {
this.db_id = db_id;
}
@Column(name = "DESCRIPTION")
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
可能的解决方案:
@OneToMany(targetEntity = Right.class, cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinColumn(name = "ID_LICENCE")
public Collection<Right> getCollection() {
Collection<Right> c = new Vector<>();
for(Right r : this){
c.add(r);
}
return c;
}
public void setCollection(Collection<Right> rights) {
this.clear();
this.addAll(rights);
}