IBatis中的强制刷新缓存

背景:使用了IBatis内置的缓存作为缓存方案.并使用了spring集成IBatis

我在我的一篇文章" 使用IBatis作数据缓存"谈到了使用IBaits作缓存,但这或许是不够的,为了给测试人员提供方便,必须提供一个 强制刷新缓存的功能,如何实现?马上进入实战:

我们通过一个jsp搞定
<% @ page  import = " xxx.common.utils.SpringBeanProxy " %>
<% @ page  import = " com.ibatis.sqlmap.client.SqlMapClient " %>
<%
            
    
            String cacheModelId 
=  request.getParameter( " cacheModelId " );
            
            SqlMapClient client 
=  (SqlMapClient) SpringBeanProxy
                    .getBean(
" sqlMapClient " );
                    
    
            client.flushDataCache(cacheModelId);
%>


ok
!

首先我们获取需要刷新缓存的id,然后从spring工厂中取出 SqlMapClient ,然后利用 SqlMapClient刷新缓存

其实你也可以调用
client. flushDataCache(),这样就刷新了所有的缓存模型而不是某一个.

你可能感兴趣的:(spring,jsp,ibatis,测试,import)