hibernate学习(2)——对象的三种状态
hibernate中的对象有三种状态。Transient(瞬时的),Persistent(持久的),Detached(离线的)。下面从内存和数据库中是否存在与之对应的记录来说明这三种状态的区别:
Transient:刚new出来的普通对象,在内存里有,Session的缓存里没有,没有ID,数据库里没有对应记录;
Persistent:内存里有,Session的缓存里有,有ID,数据库里有对应记录;
Detached:内存里有,Session的缓存里没有,有ID,数据库里有对应记录。
从上图可以看到这三种状态和很多方法混在一起,非常复杂,但不用背,理解一下,忘了动手做实验就ok了。