站在持久化的角度, Hibernate 把对象分为 4 种状态: 持久化状态, 临时状态, 游离状态, 删除状态. Session 的特定方法能使对象从一个状态转换到另一个状态.
持久化对象的状态
临时对象(Transient):
–在使用代理主键的情况下, OID
通常为null
–不处于 Session的缓存中
–在数据库中没有对应的记录
持久化对象(也叫”托管”)(Persist):
–OID 不为null
–位于 Session缓存中
–若在数据库中已经有和其对应的记录,持久化对象和数据库中的相关记录对应
–Session 在 flush缓存时,会根据持久化对象的属性变化,
来同步更新数据库
–......
阅读全文