MyBatis Plus關(guān)閉SQL日志打印的方法
前段時(shí)間公司的同事都過來問我,hua哥公司的項(xiàng)目出問題了,關(guān)閉不了打印sql日記,項(xiàng)目用寶塔自己部署的,磁盤滿了才發(fā)現(xiàn)大量的打印sql日記,他們百度過都按照網(wǎng)上的配置修改過不起作用,而且在調(diào)試時(shí)候也及為不方便,大量的紅色sql日記輸出找不著北。
MyBatis-Plus配置關(guān)閉打印SQL日記失效
百度了一圈,基本上都是說配置 org.apache.ibatis.logging.nologging.NoLoggingImpl,配置依然存在打印日記,如下圖:
看到上圖的配置和打印出來的日記就說失效了?
追本溯源,關(guān)閉打印日記是真的失效嗎?
直接從代碼下手,找到打印日記的類,是在PerformanceInterceptor類發(fā)現(xiàn)打印日記的,如下圖:
找到根源了就好辦了,查看這是性能分析攔截器,只要是涉及查詢,更新,插入的sql都會(huì)被攔截下來打印出來?我們順著這個(gè)類繼續(xù)找,在springboot的配置中找到加載PerformanceInterceptor的方法如圖:
找到問題與解決問題
找到了加載的地方,直接注釋代碼即可,啟動(dòng)時(shí)就不再加載截了。該方法上有個(gè)Profile的注解帶有1個(gè)參數(shù)是指定只有在使用dev配置文件時(shí)才會(huì)生效,我們也可以改變這個(gè)名稱或者項(xiàng)目用別的配置名稱也可以起到不加載的作用。
前臺(tái)再次查詢,發(fā)現(xiàn)后臺(tái)沒有也沒有打印sql日記了 ,這次正常了。
我們?cè)賮砜纯磑rg.apache.ibatis.logging.nologging.NoLoggingImpl是怎么回事?
這次我們把org.apache.ibatis.logging.nologging.NoLoggingImpl注釋,還原配置使用org.apache.ibatis.logging.stdout.StdOutImpl 配置發(fā)現(xiàn)此時(shí)又可以打印日記了,也就是說我們?cè)鹊呐渲胦rg.apache.ibatis.logging.nologging.NoLoggingImpl是有效的。
定位打印代碼,這里打印用的是System.out.println(s)是白色的,而上面打印用System.err.println(S)是紅色的。
總結(jié)
這里的org.apache.ibatis.logging.nologging.NoLoggingImpl失效與使用了PerformanceInterceptor類有關(guān),springboot啟動(dòng)加載配置階段會(huì)加載PerformanceInterceptor攔截器在執(zhí)行sql時(shí)因?yàn)楸籔erformanceInterceptor攔截在該類內(nèi)部執(zhí)行查詢并打印從而繞過了正常的執(zhí)行sql流程。所以說有些問題直接去百度,百度回來的未必是你所說的問題,解決問題時(shí)應(yīng)該根據(jù)實(shí)際情況從源代碼動(dòng)手。
以上就是MyBatis Plus關(guān)閉SQL日志打印的方法的詳細(xì)內(nèi)容,更多關(guān)于MyBatis Plus關(guān)閉SQL打印的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Mybatis實(shí)現(xiàn)自動(dòng)生成增刪改查代碼
這篇文章主要為大家詳細(xì)介紹了Mybatis如何實(shí)現(xiàn)自動(dòng)生成增刪改查代碼的功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-01-01解決IDEA2020 創(chuàng)建maven項(xiàng)目沒有src/main/java目錄和webapp目錄問題
這篇文章主要介紹了IDEA2020 創(chuàng)建maven項(xiàng)目沒有src/main/java目錄和webapp目錄問題解決方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10spring 自動(dòng)注入AutowiredAnnotationBeanPostProcessor源碼解析
這篇文章主要介紹了spring自動(dòng)注入AutowiredAnnotationBeanPostProcessor源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03JavaMe開發(fā)自適應(yīng)滾動(dòng)顯示
我們??吹揭恍L動(dòng)顯示的實(shí)例,比如UC瀏覽器中,顯示網(wǎng)頁(yè)的內(nèi)容。當(dāng)內(nèi)容比較多時(shí),采用滾動(dòng)分頁(yè)顯示是合理的。在Canvas中繪圖中,多余的內(nèi)容被截?cái)嗔?。如何?shí)現(xiàn)滾動(dòng)分頁(yè)顯示呢?2015-09-09Java數(shù)據(jù)結(jié)構(gòu)之實(shí)現(xiàn)跳表
今天帶大家來學(xué)習(xí)Java數(shù)據(jù)結(jié)構(gòu)的相關(guān)知識(shí),文中對(duì)用Java實(shí)現(xiàn)跳表作了非常詳細(xì)的圖文解說及代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下2021-05-05結(jié)合mybatis-plus實(shí)現(xiàn)簡(jiǎn)單不需要寫sql的多表查詢
這篇文章主要給大家介紹了關(guān)于結(jié)合mybatis-plus實(shí)現(xiàn)簡(jiǎn)單不需要寫sql的多表查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用mybatis-plus具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09SpringBoot中Tomcat和SpringMVC整合源碼分析
Tomcat和SpringMVC都是通過這樣的方式進(jìn)行集成的,SpringBoot出現(xiàn)之前SpringMVC項(xiàng)目是直接部署在Tomcat服務(wù)器中的,這篇文章主要介紹了SpringBoot中Tomcat和SpringMVC整合源碼分析,需要的朋友可以參考下2022-07-07Spring?Boot?根據(jù)配置決定服務(wù)(集群、單機(jī))是否使用某些主件的操作代碼
這篇文章主要介紹了Spring?Boot根據(jù)配置決定服務(wù)(集群、單機(jī))是否使用某些主件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2025-04-04