中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

河南濮陽建設(shè)局網(wǎng)站優(yōu)化seo設(shè)置

河南濮陽建設(shè)局網(wǎng)站,優(yōu)化seo設(shè)置,南寧百度網(wǎng)站公司電話,現(xiàn)在病毒最嚴(yán)重的地方10、MyBatis的緩存 10.1、MyBatis的一級(jí)緩存 一級(jí)緩存是SqlSession級(jí)別的,通過同一個(gè)SqlSession查詢的數(shù)據(jù)會(huì)被緩存,下次查詢相同的數(shù)據(jù),就會(huì)從緩存中直接獲取,不會(huì)從數(shù)據(jù)庫重新訪問 使一級(jí)緩存失效的四種情況: 不…

10、MyBatis的緩存

10.1、MyBatis的一級(jí)緩存

一級(jí)緩存是SqlSession級(jí)別的,通過同一個(gè)SqlSession查詢的數(shù)據(jù)會(huì)被緩存,下次查詢相同的數(shù)據(jù),就會(huì)從緩存中直接獲取,不會(huì)從數(shù)據(jù)庫重新訪問

使一級(jí)緩存失效的四種情況:

  1. 不同的SqlSession對(duì)應(yīng)不同的一級(jí)緩存
  2. 同一個(gè)SqlSession但是查詢條件不同
  3. 同一個(gè)SqlSession兩次查詢期間執(zhí)行了任何一次增刪改操作
  4. 同一個(gè)SqlSession兩次查詢期間手動(dòng)清空了緩存

10.2、MyBatis的二級(jí)緩存

二級(jí)緩存是SqlSessionFactory級(jí)別,通過同一個(gè)SqlSessionFactory創(chuàng)建的SqlSession查詢的結(jié)果會(huì)被緩存;此后若再次執(zhí)行相同的查詢語句,結(jié)果就會(huì)從緩存中獲取

二級(jí)緩存開啟的條件:

  1. 在核心配置文件中,設(shè)置全局配置屬性cacheEnabled=“true”,默認(rèn)為true,不需要設(shè)置
  2. 在映射文件中設(shè)置標(biāo)簽<cache/>
  3. 二級(jí)緩存必須在SqlSession關(guān)閉或提交之后有效
  4. 查詢的數(shù)據(jù)所轉(zhuǎn)換的實(shí)體類類型必須實(shí)現(xiàn)序列化的接口

使二級(jí)緩存失效的情況:

兩次查詢之間執(zhí)行了任意的增刪改,會(huì)使一級(jí)和二級(jí)緩存同時(shí)失效

10.3、二級(jí)緩存的相關(guān)配置

在mapper配置文件中添加的cache標(biāo)簽可以設(shè)置一些屬性:

  1. eviction屬性:緩存回收策略,默認(rèn)的是 LRU。
  • LRU(Least Recently Used) – 最近最少使用的:移除最長時(shí)間不被使用的對(duì)象

  • FIFO(First in First out) – 先進(jìn)先出:按對(duì)象進(jìn)入緩存的順序來移除它們

  • SOFT – 軟引用:移除基于垃圾回收器狀態(tài)和軟引用規(guī)則的對(duì)象。

  • WEAK – 弱引用:更積極地移除基于垃圾收集器狀態(tài)和弱引用規(guī)則的對(duì)象。

  1. flushInterval屬性:刷新間隔,單位毫秒
  • 默認(rèn)情況是不設(shè)置,也就是沒有刷新間隔,緩存僅僅調(diào)用語句時(shí)刷新
  1. size屬性:引用數(shù)目,正整數(shù)
  • 代表緩存最多可以存儲(chǔ)多少個(gè)對(duì)象,太大容易導(dǎo)致內(nèi)存溢出
  1. readOnly屬性:只讀, true/false
  • true:只讀緩存;會(huì)給所有調(diào)用者返回緩存對(duì)象的相同實(shí)例。因此這些對(duì)象不能被修改。這提供了 很重要的性能優(yōu)勢(shì)。
  • false:讀寫緩存;會(huì)返回緩存對(duì)象的拷貝(通過序列化)。這會(huì)慢一些,但是安全,因此默認(rèn)是false。

10.4、MyBatis緩存查詢的順序

先查詢二級(jí)緩存,因?yàn)槎?jí)緩存中可能會(huì)有其他程序已經(jīng)查出來的數(shù)據(jù),可以拿來直接使用。

如果二級(jí)緩存沒有命中,再查詢一級(jí)緩存。

如果一級(jí)緩存也沒有命中,則查詢數(shù)據(jù)庫。

SqlSession關(guān)閉之后,一級(jí)緩存中的數(shù)據(jù)會(huì)寫入二級(jí)緩存。

10.5、整合第三方緩存EHCache

10.5.1、添加依賴

<!-- Mybatis EHCache整合包 -->
<dependency><groupId>org.mybatis.caches</groupId><artifactId>mybatis-ehcache</artifactId><version>1.2.1</version>
</dependency>
<!-- slf4j日志門面的一個(gè)具體實(shí)現(xiàn) -->
<dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.2.3</version>
</dependency>

10.5.2、各jar包功能

jar包名稱作用
mybatis-ehcacheMybatis和EHCache的整合包
ehcacheEHCache核心包
slf4j-apiSLF4J日志門面包
logback-classic支持SLF4J門面接口的一個(gè)具體實(shí)現(xiàn)

10.5.3、創(chuàng)建EHCache的配置文件ehcache.xml

<?xml version="1.0" encoding="utf-8" ?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../config/ehcache.xsd"><!-- 磁盤保存路徑 --><diskStore path="D:\atguigu\ehcache"/><defaultCachemaxElementsInMemory="1000"maxElementsOnDisk="10000000"eternal="false"overflowToDisk="true"timeToIdleSeconds="120"timeToLiveSeconds="120"diskExpiryThreadIntervalSeconds="120"memoryStoreEvictionPolicy="LRU"></defaultCache>
</ehcache>

10.5.4、設(shè)置二級(jí)緩存的類型

<cache type="org.mybatis.caches.ehcache.EhcacheCache"/>

10.5.5、加入logback日志

存在SLF4J時(shí),作為簡易日志的log4j將失效,此時(shí)我們需要借助SLF4J的具體實(shí)現(xiàn)logback來打印日志。 創(chuàng)建logback的配置文件logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true"><!-- 指定日志輸出的位置 --><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder><!-- 日志輸出的格式 --><!-- 按照順序分別是: 時(shí)間、日志級(jí)別、線程名稱、打印日志的類、日志主體內(nèi)容、換行--><pattern>[%d{HH:mm:ss.SSS}] [%-5level] [%thread] [%logger][%msg]%n</pattern></encoder></appender><!-- 設(shè)置全局日志級(jí)別。日志級(jí)別按順序分別是: DEBUG、INFO、WARN、ERROR --><!-- 指定任何一個(gè)日志級(jí)別都只打印當(dāng)前級(jí)別和后面級(jí)別的日志。 --><root level="DEBUG"><!-- 指定打印日志的appender,這里通過“STDOUT”引用了前面配置的appender --><appender-ref ref="STDOUT" /></root><!-- 根據(jù)特殊需求指定局部日志級(jí)別 --><logger name="com.atguigu.crowd.mapper" level="DEBUG"/>
</configuration>

10.5.6、EHCache配置文件說明

屬性名是否必須作用
maxElementsInMemory在內(nèi)存中緩存的element的最大數(shù)目
maxElementsOnDisk在磁盤上緩存的element的最大數(shù)目,若是0表示無窮大
eternal設(shè)定緩存的elements是否永遠(yuǎn)不過期。 如果為true,則緩存的數(shù)據(jù)始終有效, 如果為false那么還要根據(jù)timeToIdleSeconds、timeToLiveSeconds判斷
overflowToDisk設(shè)定當(dāng)內(nèi)存緩存溢出的時(shí)候是否將過期的element緩存到磁盤上
timeToIdleSeconds當(dāng)緩存在EhCache中的數(shù)據(jù)前后兩次訪問的時(shí)間超過timeToIdleSeconds的屬性取值時(shí), 這些數(shù)據(jù)便會(huì)刪除,默認(rèn)值是0,也就是可閑置時(shí)間無窮大
timeToLiveSeconds緩存element的有效生命期,默認(rèn)是0.,也就是element存活時(shí)間無窮大
diskSpoolBufferSizeMBDiskStore(磁盤緩存)的緩存區(qū)大小。默認(rèn)是30MB。每個(gè)Cache都應(yīng)該有自己的一個(gè)緩沖區(qū)
diskPersistent在VM重啟的時(shí)候是否啟用磁盤保存EhCache中的數(shù)據(jù),默認(rèn)是false。
diskExpiryThreadIntervalSeconds磁盤緩存的清理線程運(yùn)行間隔,默認(rèn)是120秒。每個(gè)120s, 相應(yīng)的線程會(huì)進(jìn)行一次EhCache中數(shù)據(jù)的清理工作
memoryStoreEvictionPolicy當(dāng)內(nèi)存緩存達(dá)到最大,有新的element加入的時(shí)候, 移除緩存中element的策略。 默認(rèn)是LRU (最近最少使用),可選的有LFU (最不常使用)和FIFO (先進(jìn)先出)

本文章參考B站 【尚硅谷】SSM框架全套教程,MyBatis+Spring+SpringMVC+SSM整合一套通關(guān),僅供個(gè)人學(xué)習(xí)使用,部分內(nèi)容為本人自己見解,與尚硅谷無關(guān)。

http://www.risenshineclean.com/news/22737.html

相關(guān)文章:

  • 做網(wǎng)站注意哪些方面如何做廣告宣傳與推廣
  • 做問卷賺錢最好似網(wǎng)站深圳關(guān)鍵詞優(yōu)化
  • 成都的網(wǎng)站建設(shè)開發(fā)公司云南seo
  • 廣東省公路建設(shè)有限公司網(wǎng)站網(wǎng)絡(luò)營銷課程有哪些
  • 開發(fā)網(wǎng)站最新國際新聞事件今天
  • 做網(wǎng)站后臺(tái)要做些什么英文站友情鏈接去哪里查
  • 微信訂閱號(hào)做微網(wǎng)站小說搜索風(fēng)云榜
  • 吉林省吉林市簡介武漢seo搜索引擎優(yōu)化
  • 網(wǎng)站開發(fā)電腦配置要求十大外貿(mào)平臺(tái)
  • 手機(jī)設(shè)計(jì)廣州seo顧問seocnm
  • 地方網(wǎng)站域名信息流推廣
  • 創(chuàng)造你魔法官方網(wǎng)站起做歡的事百度客服24小時(shí)人工服務(wù)
  • 長春哪家公司做網(wǎng)站好軟文廣告案例分析
  • 成都網(wǎng)站建設(shè)-中國互聯(lián)公司建網(wǎng)站多少錢
  • 好品質(zhì)高端網(wǎng)站設(shè)計(jì)搜索引擎優(yōu)化師工資
  • 代替做網(wǎng)站推廣鄭州seo顧問外包公司
  • 怎么樣做搜索引擎網(wǎng)站快速刷排名seo軟件
  • 長春疫情最新情況最新消息今天網(wǎng)站seo完整seo優(yōu)化方案
  • ps做字幕模板下載網(wǎng)站網(wǎng)站怎么推廣
  • 貴陽網(wǎng)站設(shè)計(jì)免費(fèi)做網(wǎng)站的平臺(tái)
  • 馬鞍山做網(wǎng)站公司排名深圳百度seo哪家好
  • 網(wǎng)頁設(shè)計(jì)如何建立網(wǎng)站杭州關(guān)鍵詞自動(dòng)排名
  • 淮安汽車集團(tuán)網(wǎng)站建設(shè)長沙網(wǎng)站seo
  • 網(wǎng)站建設(shè)是什么語言網(wǎng)站營銷策略
  • 北京商地網(wǎng)站建設(shè)公司百度網(wǎng)站排名查詢工具
  • 品劃網(wǎng)絡(luò)做營銷型網(wǎng)站如何在百度上營銷
  • 深圳專門做寫字樓的網(wǎng)站國內(nèi)最新新聞事件今天
  • 做網(wǎng)站開發(fā)電腦配置本地推薦本地推薦
  • 西安網(wǎng)站seo技術(shù)上海網(wǎng)絡(luò)seo
  • 泰興市淘寶網(wǎng)站建設(shè)鄭州seo推廣