配置方法:
1. 在表对应的xml映射文件中增加如下语句
<cacheModel id="channelCache" type="MEMORY">
<flushInterval hours="24"/>
<flushOnExecute statement="PICTURE_CHANNEL.insert"/>
<flushOnExecute statement="PICTURE_CHANNEL.deleteById"/>
<flushOnExecute statement="PICTURE_CHANNEL.deleteByMap"/>
<flushOnExecute statement="PICTURE_CHANNEL.updateByMap"/>
<flushOnExecute statement="PICTURE_CHANNEL.updateById"/>
<property name="reference-type" value="WEAK" />
</cacheModel>
注释: id ="channelCache" 是定义cache的id
PICTURE_CHANNEL.insert 中,
PICTURE_CHANNEL为映射文件的namespace的名字, 我这个文件中这样写
<sqlMap namespace="PICTURE_CHANNEL">. 在后面点之后的名字
[insert,deleteById,eleteByMap,pdateByMap,updateById]是sqlmap中操作sql 的Id,
如我的sqlmap中id, <delete id="deleteById" ....
2. 将id为channelCache定义好的cache, 写在查询的Id属性中
如:
<select id="getParentChannelById" resultMap="ChannelResult"
parameterClass="java.lang.Integer" cacheModel="channelCache">
select * from PICTURE_CHANNEL start with CHANNEL_ID=#value# connect by prior
PARENT_ID=CHANNEL_ID
</select>