首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

温习 - 持久化环境相关的其他API (clear, evict, setReadyOnly)和FlushMode

2012-09-22 
复习 - 持久化环境相关的其他API (clear, evict, setReadyOnly)和FlushMode复习 - 持久化环境相关的其他AP

复习 - 持久化环境相关的其他API (clear, evict, setReadyOnly)和FlushMode

复习 - 持久化环境相关的其他API (clear, evict, setReadyOnly)和FlushMode

?

前面的一些复习提到了Hiberante的自动脏数据检查功能,他的实质是会保存对象的一个快照,这个功能固然很好很强大,但是一旦数据量比较大,那么快照所需的空间也会比较大,所以我们可能需要在合适的时候进行手动的清理,来确保不会OutOfMemory

?

有下面几种可以清理的session中的对象或是阻止生成快照的方法

?

1. evict

这个方法就是将session中的对象(persist状态)清理出去,让他变成detached状态. 这样在session级别的缓存中就不会有该对象存在,如果查询同一条数据库中的数据,会重新生成查询语句加载,例子如下:

?

?默认的级别是FlushMode.AUTO, 也就是事务被提交或者发生查询之后才会将脏数据同步到db里面.
?
<p>?</p>
<p>?</p>
</div>
<p>谢谢</p>

热点排行