我正在使用hibernate 3.2.1。
在实体类中,我看到注释@OneToMany
和@JoinColumns
总是一起使用。但这些意味着什么呢?例如,如果我们按如下方式注释我们的实体类将意味着什么:
@Entity
@Table(name = "player_account")
public class PlayerAccount {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private int id;
@ManyToOne(targetEntity = Player.class, fetch = FetchType.EAGER)
//Without @JoinColumn
private Player player;
//GET, SET
}
答案 0 :(得分:2)
请参阅Hibernate的相关文档:http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/ 你需要2.2.5.2。多对一部分: @JoinColumn属性是可选的,默认值类似于一对一,所有者端关系名称的串联,_(下划线)和自有端中主键列的名称
答案 1 :(得分:1)
@OneToMany
注释定义了具有一对多多重性的多值关联。
如果使用泛型定义集合来指定元素类型,则不需要指定关联的目标实体类型;否则必须指定目标实体类
@JoinColumn
用于指定用于加入实体关联的映射列。