zoukankan      html  css  js  c++  java
  • ibatis中使用缓存

    简单在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

    原文:http://blog.csdn.net/zzcv_/article/details/1956056

    相关:ibatis sqlMapConfig settings 中属性用法

  • 相关阅读:
    CentOS7.6安装Kubernetes v1.15.1
    数据库三大范式
    linux
    linux
    linux
    linux
    Django contenttypes组件
    Django自带的用户认证
    Django rest framework(7) ---分页
    Django rest framework(6) ---序列化
  • 原文地址:https://www.cnblogs.com/langtianya/p/7538412.html
Copyright © 2011-2022 走看看