一对一共享主键映射关系
用户实体类 User.java
private Userdetail userdetail;
public Userdetail getUserdetail() {
return this.userdetail;
}
public void setUserdetail(Userdetail userdetail) {
this.userdetail = userdetail;
}
Userdetail.java
private User user;
public User getUser() {
return this.user;
}
public void setUser(User user) {
this.user = user;
}
user.hbm.xml
<one-to-one name="userdetail" class="com.jkxy.entity.Userdetail" cascade="all"></one-to-one>
userdetail.hbm.xml
<class name="com.jkxy.entity.Userdetail" table="userdetail" catalog="jkxyflower">
<id name="userid" type="java.lang.Integer">
<column name="userid" />
<!-- <generator class="identity" /> -->
<generator class="foreign">
<param name="property">user</param>
</generator>
</id>
<one-to-one name="user" class="com.jkxy.entity.User" constrained="true"></one-to-one>
一对一唯一外键映射关系
guashi.java
private User user;
public User getUser() {
return this.user;
}
public void setUser(User user) {
this.user = user;
}
user.java
private Guashi guashi;
public Guashi getGuashi() {
return guashi;
}
public void setGuashi(Guashi guashi) {
this.guashi = guashi;
}
guashi.hbm.xml
<many-to-one name="user" class="com.jkxy.entity.User" fetch="select" unique="true">
<column name="userid" />
</many-to-one>
user.hbm.xml
<one-to-one name="guashi" class="com.jkxy.entity.Guashi" property-ref="user"></one-to-one>
一对多映射关系
orders.java
private Set orderitems = new HashSet(0);
public Set getOrderitems() {
return this.orderitems;
}
public void setOrderitems(Set orderitems) {
this.orderitems = orderitems;
}
OrderItem.java
private Orders orders;
public Orders getOrders() {
return this.orders;
}
public void setOrders(Orders orders) {
this.orders = orders;
}
orders.hbm.xml
<set name="orderitems" inverse="true" cascade="all">
<key>
<column name="orderid" />
</key>
<one-to-many class="com.jkxy.entity.Orderitem" />
</set>
orderitem.xml
<many-to-one name="orders" class="com.jkxy.entity.Orders" fetch="select">
<column name="orderid" />
</many-to-one>