如何在给定模型(JavaWeb)中引用另一个模型?
我有一个带有以下部分的如何在给定模型(JavaWeb)中引用另一个模型?,java,mysql,hibernate,Java,Mysql,Hibernate,我有一个带有以下部分的Movie.java模型: @Column(name = "genre") private Integer genre; 在my DB中,表Movie有一个名为genre的列,它是我的genre表中的一个FK Genre.java是另一个只有两个属性的模型:id由MySQL数据库和name自动生成。如何引用流派,以便在使用电影的实例时调用.getGenre()并接收流派对象而不是id 我使用的是Java EE 7、Hibernate 4.3.11和GlassFish 4.
Movie.java
模型:
@Column(name = "genre")
private Integer genre;
在my DB中,表Movie
有一个名为genre
的列,它是我的genre
表中的一个FK
Genre.java
是另一个只有两个属性的模型:id
由MySQL数据库和name
自动生成。如何引用流派
,以便在使用电影
的实例时调用.getGenre()
并接收流派
对象而不是id
我使用的是Java EE 7、Hibernate 4.3.11和GlassFish 4.1.1假设电影和流派是
OneToMany
映射,下面是一个示例代码:
public class Movie {
// ...
@OneToMany(mappedBy="movie")
private Set<Genre> genres;
// getter and setter
}
您可以参考以实现
manytomy
注释映射。假设您在电影中添加私有类型Genre
。java
。更现实的映射是@manytomone
或者如果电影实际上属于多个类型,甚至可能是@manytomy
。是的,ManyToOne或ManyToMany更适合这种情况。
public class Genre {
// ...
@ManyToOne(cascade=CascadeType.ALL)
@JoinColumn(name="genre")
private Movie movie;
}