OR投射的缓存机制
OR映射的缓存机制
OR映射文件中配置iBatis缓存机制
<cacheModel
id="my-cache"
type="LRU" LRU算法按照最少使用数据规则清理数据
readOnly="true" true表示缓存数据不可更新,当数据对象某个属性发生变化时,缓存数据就废除
serialize="false">
<flushInterval hours="24"/> 强制刷新缓存间隔时间
<flushOnExecute statement="updateUser" /> 执行该动作后刷新缓存
<property name="size" value="1000" /> 缓存容量
</cachemodel>
在 serialize="true"的情况下,如果有多个Session同时从Cache 中读取某个
数据对象,Cache 将为每个Session返回一个对象的 复本 ,也就是说,每个Session 将
得到包含相同信息的不同对象实例。因而Session 可以对其从Cache 获得的数据进行
存取而无需担心多线程并发情况下的同步冲突。
OR映射文件中配置iBatis缓存机制
<cacheModel
id="my-cache"
type="LRU" LRU算法按照最少使用数据规则清理数据
readOnly="true" true表示缓存数据不可更新,当数据对象某个属性发生变化时,缓存数据就废除
serialize="false">
<flushInterval hours="24"/> 强制刷新缓存间隔时间
<flushOnExecute statement="updateUser" /> 执行该动作后刷新缓存
<property name="size" value="1000" /> 缓存容量
</cachemodel>
在 serialize="true"的情况下,如果有多个Session同时从Cache 中读取某个
数据对象,Cache 将为每个Session返回一个对象的 复本 ,也就是说,每个Session 将
得到包含相同信息的不同对象实例。因而Session 可以对其从Cache 获得的数据进行
存取而无需担心多线程并发情况下的同步冲突。