Service.java
public class Service
{
/**
* 与BindInfo many-to-many 中间表 ServiceBindInfo
*/
private Set<Product> products = new HashSet<Product>();
}
service.hbm.xml
<set name="products" inverse="true" batch-size="10" lazy="true"
cascade="all">
<key column="SERVICEID" />
<one-to-many class="com.huawei.eidc.pojo.product.Product" />
</set>
Product.java
public class Product
{
private Service pservice;
}
product.hbm.xml
<many-to-one name="pservice"
class="com.huawei.eidc.pojo.service.Service" fetch="join">
<column name="SERVICEID" precision="10" scale="0"
not-null="true" />
</many-to-one>
更新Product和service时,需根据service查询出product,更新product字段,再更新service字段,modifyService即可,无需设置products.addProduct等,如果设置或者根据级联关系查询出product,可能会造成死锁问题发生。