<set>元素的inverse属性很有意思,默认值是false
Customer customer =(Customer)session.load(Customer.class,new Long(5));
Order order =(Order)session.load(Order.class,new Long(6));
order.setCustomer(customer);
customer.getOrders().add(order);
inverse=false:显示两个select语句,两个update语句
inverse=true:显示三个select语句,一个update语句
精通Hibernate中的总结:
- 在映射一对多的双向关联关系时,应该在“many”方把inverse属性设为"true",这可以提高性能(真的能提高性能?)
- 在建立两个对象的双向关联时,应该同时修改关联两端的对象的相应属性,这样会使程序健壮(这个我十分的同意,这样程序是会健壮)