zoukankan      html  css  js  c++  java
  • Hibernate 持久化对象的状态

    持久化对象有3种状态:1、持久化状态      2、临时状态      3、游离状态


    Session 的特定方法能使对象从一个状态转换到另一个状态
    临时对象(transient)
    •    在使用代理主键的情况下, OID 通常为 null
    •    不处于 Session 的缓存中
    •    在数据库中没有对应的记录


    持久化对象(也叫”托管”)(Persist)
    •    OID 不为 null
    •    位于 Session 缓存中
    •    持久化对象和数据库中的相关记录对应
    •    Session 在清理缓存时, 会根据持久化对象的属性变化, 来同步更新数据库
    •    在同一个 Session 实例的缓存中, 数据库表中的每条记录只对应唯一的持久化对象


    游离对象(也叫”脱管”)(Detached)
    •    OID 不为 null
    •    不再处于 Session 的缓存中
    •    一般情况需下, 游离对象是由持久化对象转变过来的, 因此在数据库中可能还存在与它对应的记录
    Session使用以下方法可以使持久化对象转变成游离对象:

  • 相关阅读:
    数据库结构中的"树"
    Jquery学习
    cms系统也不复杂
    让你的博客园变灰
    IList对象排序方法
    计算机简介(二)
    在同一台电脑上使用U盘时快时慢的解决方法
    计算机简介
    合并排序
    javascript小结
  • 原文地址:https://www.cnblogs.com/liuwt365/p/4220002.html
Copyright © 2011-2022 走看看