ibatis中使用缓存

8 篇文章 0 订阅
简单在ibatis中使用cache

  首先设置SqlMapConfig.xml中
< settings /> 节点的属性cacheModelsEnabled="true"
  
  然后在具体sqlmap文件中书写
< cacheModel >
    
< cacheModel  id ="product-cache"  type ="LRU" >  
      
< flushInterval  hours ="24" />  
      
< flushOnExecute  statement ="insertProduct" />
      
< flushOnExecute  statement ="updateProduct" />  
      
< flushOnExecute  statement ="deleteProduct" />  
      
< property  name ="size"  value ="1000"   />  
    
</ cacheModel >
   
  最后给
< select /> 节点应用cache
    
< select  id ="getAllProducts"  cacheModel ="product-cache" >
      select * from PRODUCT
    
</ statement >  
    
复杂点的用法

  
< cacheModel /> 节点
  
    type="LRU"
      type属性可以指定cache的类型,ibatis支持3种缓存:
        MEMORY     没有统一的对象重用模式或内存不足的应用。
        LRU        经常使用的对象,这是性能最好的选择。
        FIFO       在短时间内持续引用,而后很可能不再使用。
      也可以使用外部cache如:
        type="OSCACHE"
     
    readOnly="true"
      默认true时缓存效果最好,可以减少更新。
      
    serialize="false"
      默认false,设true可以提高整体应用的性能。
        serialize只能应用于实现了Serializable接口的对象,而且和lazyLoadingEnabled="true"属性冲突。
        
    flushInterval
      自动刷新间隔时间。

    flushOnExecute
      在特定id的操作后,刷新cache,可选操作。

  手动刷新缓存
    [sqlmap].flushDataCache("product-cache")
      刷新cache当id="product-cache"
    [sqlmap].flushDataCache()
      刷新sqlmap内的所有cache
 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值