无题1
1.当hibernate持久化一个临时对象时,在默认情况下,它不会自动持久化所关联的其它临时对象。如果希望希望当hibernate持久化一个临时对象时自动持久化所关联的对象,可以在配置文件中将该对象所要关联持久化的那个对象的cascade属性设为'save-update',cascade属性的默认值为‘none’。
caseCade的属性为save-update表示保存或者更新当前对象时,会级联保存或更新与它相关联的对象
2.inverse属性用来决定由哪端来维护关系
例如:
public class Customer implements java.io.Serializable {private Integer id;private String name;private Set orders=new HashSet();//get/set.......}public class Order implements java.io.Serializable {private Integer id;private Customer customer;private String orderNumber;//get/set.......}public void associateCustomerAndOrder(){//getSession1()........Customer customer=new Customer("jack");Order order=new Order();order.setOrderNumber("jack_order001") ;session1.save(customer);session1.save(order);int idofJack=customer.getId();int idofjackOrder=order.getId();//closeSession()1......//getSession2()........Customer customer=(Customer)session2.load(Customer.class,idofJack);Order order=(Order)session2.load(Order.class,idofjackOrder);order.setCustomer(customer); //1customer.getOrders().add(order); //2//closeSession()2......}