标签:
这里指的是对象之间在数量上的关系,包括一对一、一对多、多对一、多对多四种。
单向与双向映射是编程角度的区别,在数据库角度讲,是没有区别的(即单向的数据库表与双向的数据库表是一模一样的)
双向关联必设mappedBy!
一对一单向外键关联@OneToOne @JoinColumn
一对一双向外键关联@OneToOne(mappedBy="***")
一对一单向主键关联@OneToOne @PrimaryKeyJoinColumn //很少用
一对一双向外键关联@OneToOne(mappedBy="***") //很少用
联合主键关联(一对一单向外键关联的特例)@OneToOne @JoinColumns({@JoinColumn(name="", referencedColumnName=""), @JoinColumn(name="", referencedColumnName="")})
组件映射 @Embedded
多对一单向映射@ManyToOne
一对多单向映射@OneToMany @JoinColumn(name="***")//一定要有这个注解,否则会当做多对多来处理
一对多、多 对一双向关联:@OneToMany(mappedBy="***") @ManyToOne
多对多单向关联:@ManyToMany
多对多单向关联:@ManyToMany @ManyToMany(mappedBy="***")
标签:
原文地址:http://www.cnblogs.com/cbirdq/p/4604782.html