hibernate注意

1.父子关系的级联(cascading)操作准确语义如下:

•如果父对象被 persist(),那么所有子对象也会被 persist()
•如果父对象被 merge(),那么所有子对象也会被 merge()
•如果父对象被 save(),update() 或 saveOrUpdate(),那么所有子对象则会被 saveOrUpdate()
•如果某个持久的父对象引用了瞬时(transient)或者脱管(detached)的子对象,那么子对象
将会被 saveOrUpdate()
•如果父对象被删除,那么所有子对象也会被 delete()
•除非被标记为 cascade="delete-orphan"(删除“孤儿”模式,此时不被任何一个父对象引用的
子对象会被删除),否则子对象失掉父对象对其的引用时,什么事也不会发生。如果有特殊需
要,应用程序可通过显式调用 delete() 删除子对象。
=================================================================================
2.对 update 的调用使一个脱管对象重新持久化,你可以说它被绑定到一个新的单元操作上,所以在
脱管状态下对它所做的任何修改都会被保存到数据库里。这也包括你对这个实体对象的集合所作
的任何改动(增加/删除)。

你可能感兴趣的:(Hibernate)