Hibernate中持久化对象的三种状态

小鱼儿 2022-06-04 09:29 361阅读 0赞

Hibernate中把需要持久化到数据库中的对象分为三种状态:

  1. 瞬时态:没有和session关联过的数据

  2. 持久态:Session对象关联的对象,当数据变化,关闭session前会同步到数据库

  3. 脱管态:和session脱离关联的对象

Session的close,clear,evict,save方法:

Close:关闭session,清除一级缓存

Clear:只清除一级缓存

Evict:清除一级缓存的某个对象

Save:不是直接插入到数据库,而是根据策略先设置ID(一般会先查询),在提交的时候才会insert


Hibernate的缓存:

一级缓存:从数据库获取的数据对象或者已经保存到数据库的数据对象,在session关闭前会自动缓存在session的集合中。查找数据时,会先从一级缓存查找

发表评论

表情:
评论列表 (有 0 条评论,361人围观)

还没有评论,来说两句吧...

相关阅读