zoukankan      html  css  js  c++  java
  • Hibernate对象的三种状态,瞬时态、持久态、游离态

    1.瞬时态。(new完一个对象,突然断电,内存中没有此对象)

        hibernate中什么时候的对象为瞬时态呢,当我们new 一个对象时,还没有save时,它就是瞬时态的,当我们delete一个对象时,它也是瞬时态了,因为此时,他们在数据库中没有对应的记录存在

    2.持久态。(持久态不一定一定要存在数据库,可以放在本地文件中)

       当我们save一个对象时,这个对象会保存到数据库,同时也会缓存在session中,同时,当我们get(),load(),updateOrSave()一个对象时,也会将这个对象缓存在session中,这时缓存中的对象与数据库是同步的,也就是持久态的,任何一方的改变都会同步更新。(持久态不一定一定要存在数据库,可以放在本地文件中)

    3.游离态。(数据库或者本地文件中存了,然后对其中数据进行修改,修改完没有进行持久化,此时的状态是游离态)

       当对象从持久态转变为另一状态时,这个状态就是游离态了。比如:session.close(),session.evict()对象时,对象从session缓存中清除,数据库中有数据,缓存中没有数据,因为数据库中有数据,所以它是可以再被持久化的.

    注:对象的三种状态,同Hibernate没有关系 

  • 相关阅读:
    Java在ACM中的应用
    acm->stl
    残缺棋盘--状压DP
    EOJ Monthly 2019.3 A
    【CF1141E】Superhero Battle
    AtCoder Grant Contest 10.F 博弈
    莫比乌斯反演总结
    P2257 YY的GCD
    BZOJ1011 莫比乌斯反演(基础题
    HDU1695 莫比乌斯反演
  • 原文地址:https://www.cnblogs.com/gongchengshiwhl/p/7145621.html
Copyright © 2011-2022 走看看