<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks


    1.ibatis中使用緩存
    首先設置SqlMapConfig.xml中<settings/>節點的屬性cacheModelsEnabled="true"
     
      然后在具體sqlmap文件中書寫<cacheModel>

    Xml代碼 

    1<cacheModel id="product-cache" type="LRU">     
    2  <flushInterval hours="24"/>     
    3  <flushOnExecute statement="insertProduct"/>   
    4  <flushOnExecute statement="updateProduct"/>     
    5  <flushOnExecute statement="deleteProduct"/>     
    6  <property name="size" value="1000" />     
    7</cacheModel>  


      最后給<select/>節點應用cache

    Xml代碼 

    1<select id="getAllProducts" cacheModel="product-cache">   
    2  select * from PRODUCT    
    3</statement>    


    復雜點的用法

    Xml代碼 

     1<cacheModel/>節點    
     2  type="LRU"   
     3    type屬性可以指定cache的類型,ibatis支持3種緩存:    
     4      MEMORY     沒有統一的對象重用模式或內存不足的應用。    
     5      LRU        經常使用的對象,這是性能最好的選擇。    
     6      FIFO       在短時間內持續引用,而后很可能不再使用。    
     7    也可以使用外部cache如:    
     8      type="OSCACHE"   
     9       
    10  readOnly="true"   
    11    默認true時緩存效果最好,可以減少更新。    
    12        
    13  serialize="false"   
    14    默認false,設true可以提高整體應用的性能。    
    15      serialize只能應用于實現了Serializable接口的對象,而且和lazyLoadingEnabled="true"屬性沖突。    
    16          
    17  flushInterval    
    18    自動刷新間隔時間。    
    19   
    20  flushOnExecute    
    21    在特定id的操作后,刷新cache,可選操作。    
    22   
    23手動刷新緩存    
    24  [sqlmap].flushDataCache("product-cache")    
    25    刷新cache當id="product-cache"   
    26  [sqlmap].flushDataCache()    
    27    刷新sqlmap內的所有cache   
    28


    2.ibatis 拼接sql語句,動態查詢
    在ibatis中使用安全的拼接語句,動態查詢
    ibatis比JDBC的優勢之一,安全高效
    說明文字在注釋中

    Xml代碼 

     1<select id="selectAllProducts" parameterClass="Product" resultMap="ProductResult">   
     2  select id,note from Product    
     3     <dynamic prepend="WHERE">   
     4     <!-- isNotNull判斷參數是否存在,Integer類型 -->   
     5          <isNotNull property="id">   
     6              <!-- isGreaterThan判斷參數是否大于compareValue,isGreaterEquals是大于等于 -->   
     7              <isGreaterThan prepend=" and " property="id" compareValue="0">   
     8              id = #id#    
     9              </isGreaterThan>   
    10          </isNotNull>   
    11          <!-- isNotEmpty判斷字串不為空,isEmpty可以判斷字串為空 -->   
    12          <isNotEmpty prepend=" and " property="note">   
    13          <!-- 模糊查詢不能用#,#在是用prepareStatement的?插入參數,$是文本替換 -->   
    14          note like '%$note$%'    
    15          </isNotEmpty>   
    16      </dynamic>   
    17</select>   


    用Map傳參數

    Xml代碼 

     1<select id="selectAllProducts" parameterClass="java.util.HashMap" resultMap="ProductResult">   
     2  select id,note from Product    
     3     <dynamic prepend="WHERE">   
     4     <!-- isPropertyAvailable判斷屬性是否有效 -->   
     5        <isPropertyAvailable property="id">   
     6          <isNotNull property="id">   
     7              <!-- isLessThan判斷參數是否小于compareValue,isLessEquals是小于等于 -->   
     8              <isLessThan prepend=" and " property="id" compareValue="10">   
     9              id = #id#    
    10              </isLessThan>   
    11          </isNotNull>   
    12        </isPropertyAvailable>   
    13      </dynamic>   
    14</select>   


    ---------------------------------幾個常用屬性----------------------------------

    Xml代碼

     1<isPropertyAvailable> 屬性是存在    
     2<isNotPropertyAvailable> 屬性不存在    
     3<isNull> 屬性值是null    
     4<isEmpty> 判斷Collection.size<1或String.length()<1   
     5<isEqual> 等于    
     6<isNotEqual> 不等于    
     7<isGreaterThan> 大于    
     8<isGreaterEqual> 大于等于    
     9<isLessThan> 小于    
    10<isLessEqual> 小于等于   
    posted on 2010-06-30 16:58 rogerfan 閱讀(190) 評論(0)  編輯  收藏 所屬分類: 【開源技術】
    主站蜘蛛池模板: 19禁啪啪无遮挡免费网站| 一级午夜免费视频| 91香蕉在线观看免费高清| 亚洲乱亚洲乱妇无码麻豆| h视频免费高清在线观看| 亚洲无码高清在线观看| 成人福利在线观看免费视频| 伊在人亚洲香蕉精品区麻豆| 免费看黄福利app导航看一下黄色录像| 国产成人高清精品免费鸭子| 看全免费的一级毛片| 亚洲国模精品一区| 国产一级婬片A视频免费观看| 亚洲熟女一区二区三区| 一级毛片免费观看| 亚洲一区二区三区四区视频| 久久精品网站免费观看| 亚洲av色香蕉一区二区三区| 亚洲精品456播放| 18禁超污无遮挡无码免费网站 | 91精品免费观看| 亚洲国产精品无码久久久| 美女视频黄是免费的网址| 亚洲日本成本人观看| 亚洲国产精品一区二区九九| 老司机69精品成免费视频| 亚洲成A∨人片在线观看无码| 午夜成年女人毛片免费观看| 黄色网址在线免费观看| 亚洲av午夜福利精品一区| 波多野结衣在线免费观看| 色偷偷亚洲男人天堂| 国产精品亚洲片在线观看不卡| 精品免费人成视频app| 亚洲av无码专区在线观看亚| 狠狠综合久久综合88亚洲| 成人免费观看一区二区| 一二三区免费视频| 亚洲自偷精品视频自拍| 免费在线精品视频| 18禁男女爽爽爽午夜网站免费|