mybatis整合ehcache快取框架的使用
1.開啟mybatis的二級快取
在核心配置檔案sqlmapconfig.xml中加入
1232.匯入ehcache相關jar包4
ehcache-core-2.6.5.jar
mybatis-ehcache-1.0.2.jar
3.在classpath下加入ehcache.xml檔案
1屬性說明:2 xsi:nonamespaceschemalocation="../config/ehcache.xsd">34
5 maxelementsinmemory="1000"
6 maxelementsondisk="10000000"
7 eternal="false"
8 overflowtodisk="false"
9 timetoidleseconds="120"
10 timetoliveseconds="120"
11 diskexpirythreadintervalseconds="120"
12 memorystoreevictionpolicy="lru">
1314
diskstore:指定資料在磁碟中的儲存位置。
defaultcache:當借助cachemanager.add("democache")建立cache時,ehcache便會採用指定的的管理策略
以下屬性是必須的:
maxelementsinmemory - 在記憶體中快取的element的最大數目
maxelementsondisk - 在磁碟上快取的element的最大數目,若是0表示無窮大
eternal - 設定快取的elements是否永遠不過期。如果為true,則快取的資料始終有效,如果為false那麼還要根據timetoidleseconds,timetoliveseconds判斷
overflowtodisk - 設定當記憶體快取溢位的時候是否將過期的element快取到磁碟上
以下屬性是可選的:
timetoidleseconds - 當快取在ehcache中的資料前後兩次訪問的時間超過timetoidleseconds的屬性取值時,這些資料便會刪除,預設值是0,也就是可閒置時間無窮大
timetoliveseconds - 快取element的有效生命期,預設是0.,也就是element存活時間無窮大
diskspoolbuffersizemb 這個引數設定diskstore(磁碟快取)的快取區大小.預設是30mb.每個cache都應該有自己的乙個緩衝區.
diskpersistent - 在vm重啟的時候是否啟用磁碟儲存ehcache中的資料,預設是false。
diskexpirythreadintervalseconds - 磁碟快取的清理執行緒執行間隔,預設是120秒。每個120s,相應的執行緒會進行一次ehcache中資料的清理工作
memorystoreevictionpolicy - 當記憶體快取達到最大,有新的element加入的時候, 移除快取中element的策略。預設是lru(最近最少使用),可選的有lfu(最不常使用)和fifo(先進先出)
根據需求調整快取引數:
按 ctrl+c 複製**
按 ctrl+c 複製**
log4j列印如下日誌,說明快取開啟成功:
應用場景:
對於訪問多的查詢請求且使用者對查詢結果實時性要求不高,此時可採用mybatis二級快取技術降低資料庫訪問量,提高訪問速度,業務場景比如:耗時較高的統計分析sql、**賬單查詢sql等。
實現方法如下:通過設定重新整理間隔時間,由mybatis每隔一段時間自動清空快取,根據資料變化頻率設定快取重新整理間隔flushinterval,比如設定為30分鐘、60分鐘、24小時等,根據需求而定。
快取都是實現了cache這個介面.....
public class ehcache implements cache{}
大家可以相互學習,我們都是熱愛程式設計的it少年,大家一起努力,讓我們的it夢飛得更高吧!!!
springboot中整合thymeleaf模板
一 什麼是 thymeleaf?thymeleaf是一款用於渲染xml xhtml html5內容的模板引擎。類似jsp,velocity,freemaker等 也可以輕易的與spring mvc等web框架進行整合作為web應用的模板引擎。與其它模板引擎相比,thymeleaf最大的特點是能夠直接...
springboot中整合logback日誌配置
logback是log4j框架的作者開發的新一代日誌框架,它效率更高 能夠適應諸多的執行環境,同時天然支援slf4j。預設情況下,spring boot會用logback來記錄日誌,並用info級別輸出到控制台。在執行應用程式和其他例子時,你應該已經看到很多info級別的日誌了。使用 logback...
在Visual C 中整合DDK WDK
要在windows下開發驅動程式,最直接的方法就是用免費的wdk windows driver kit 但是wdk只提供了命令列下執行的編譯和鏈結工具,並沒有ide,這樣對於那些用貫了visual c 的開發者會來說有些不方便。要把wdk整合到visual c 裡,要對專案進行如下設定 1 新建乙個...