Hibernate中持久化对象的三种状态
Hibernate中把需要持久化到数据库中的对象分为三种状态:
瞬时态:没有和session关联过的数据
持久态:Session对象关联的对象,当数据变化,关闭session前会同步到数据库
脱管态:和session脱离关联的对象
Session的close,clear,evict,save方法:
Close:关闭session,清除一级缓存
Clear:只清除一级缓存
Evict:清除一级缓存的某个对象
Save:不是直接插入到数据库,而是根据策略先设置ID(一般会先查询),在提交的时候才会insert
Hibernate的缓存:
一级缓存:从数据库获取的数据对象或者已经保存到数据库的数据对象,在session关闭前会自动缓存在session的集合中。查找数据时,会先从一级缓存查找
还没有评论,来说两句吧...