本文将修改之前的单边一对一关系为双边的一对一。单边的一对一关系请看如下地址:http://blog.csdn.net/smilefyx/article/details/48951527.
在使用ManyToOne、OneToMany、ManyToMany和OneToOne等配置时,都可以使用MappedBy配置该属性是反向属性,表明与另一边的实体类的mappedBy制定的属性是对应的。
1、修改代码
修改单边一对一关系中的船员的实体类,添加另一边的一对一关系。在代码中添加一对一的ship类型的captainedShip,表示该船长管理的船只,该一对一属性使用OneToOne进行配置,使用mappedBy配置改属性为反向属性而具体的配置则位于实体类的caption属性中。
需要添加到Sailor.java中的代码如下:
@OneToOne(mappedBy = "captain")
private Ship CatainedShip;
public Ship getCatainedShip() {
return CatainedShip;
}
public void setCatainedShip(Ship catainedShip) {
CatainedShip = catainedShip;
}