mybatis-plus開(kāi)啟sql打印的三種方式總結(jié)
1、在application.yml文件中添加mybatisplus的配置文件
使用mybatisplus自帶的log-impl配置,可以在控制臺(tái)打印出sql語(yǔ)句、執(zhí)行結(jié)果的數(shù)據(jù)集、數(shù)據(jù)結(jié)果條數(shù)等詳細(xì)信息,這種方法適合再調(diào)試的時(shí)候使用,因?yàn)檫@個(gè)展示的信息詳細(xì),更便于調(diào)試,查找問(wèn)題進(jìn)行優(yōu)化。缺點(diǎn)就是如果執(zhí)行的sql語(yǔ)句過(guò)多,則輸出的日志就會(huì)很多,
mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #開(kāi)啟sql日志
2、在application.yml文件中使用log4j日志框架配置
使用這個(gè)方法可以再控制臺(tái)或者日志文件中打印sql語(yǔ)句,這種方法比較適合再生產(chǎn)環(huán)境種使用,可以避免輸出過(guò)多的無(wú)用信息,也可以使用日志級(jí)別來(lái)控制是否打印sql語(yǔ)句。
//com.example.classroomrealtimefeedback.mapper是你mapper層的包名
logging: level: com.example.classroomrealtimefeedback.mapper: debug
3 、使用P6spy插件
可以再控制臺(tái)中打印出sql語(yǔ)句,并且再控制臺(tái)中將輸出的sql中的?部分替換位真實(shí)運(yùn)行的值,這種方法適合需要復(fù)制sql語(yǔ)句到數(shù)據(jù)庫(kù)工具中直接執(zhí)行的場(chǎng)景,也可以通過(guò)spyproperties文件來(lái)配置是否開(kāi)啟慢sql記錄、慢sql記錄標(biāo)準(zhǔn)的參數(shù)。該插件有性能損耗,不建議生產(chǎn)環(huán)境使用
引用依賴:
<dependency> <groupId>p6spy</groupId> <artifactId>p6spy</artifactId> <version>3.9.1</version> </dependency>
修改.yml配置文件:
這里的配置是將mysql數(shù)據(jù)庫(kù)和這個(gè)插件的配置合一起了。
spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://127.0.0.1:3306/qcby?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf-8 #mysql為數(shù)據(jù)庫(kù)類型,后面為數(shù)據(jù)庫(kù)連接地址,
配置spy.properties文件:
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger deregisterdrivers=true useprefix=true dateformat=yyyy-MM-dd HH:mm:ss # 實(shí)際驅(qū)動(dòng)可多個(gè) #driverlist=org.h2.Driver # 是否開(kāi)啟慢SQL記錄 outagedetection=true # 慢SQL記錄標(biāo)準(zhǔn) 1 秒 outagedetectioninterval=1
輸出結(jié)果:
可能出現(xiàn)的問(wèn)題:
- 打印出sql為null,在excludecategories增加commit
- 批量操作不打印sql,去除excludecategories中的batch
以上就是mybatisplus開(kāi)啟sql打印的三種方式總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于mybatisplus開(kāi)啟sql打印的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Spring Boot中使用Redis做緩存的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Spring Boot中使用Redis做緩存的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06SpringCloud與Consul集成實(shí)現(xiàn)負(fù)載均衡功能
負(fù)載均衡基本概念有:實(shí)服務(wù)、實(shí)服務(wù)組、虛服務(wù)、調(diào)度算法、持續(xù)性等,其常用應(yīng)用場(chǎng)景主要是服務(wù)器負(fù)載均衡,鏈路負(fù)載均衡。這篇文章主要介紹了SpringCloud與Consul集成實(shí)現(xiàn)負(fù)載均衡 ,需要的朋友可以參考下2018-09-09JavaWeb開(kāi)發(fā)中alias攔截器的使用方法
本文給大家介紹在JavaWeb開(kāi)發(fā)中alias攔截器的使用方法相關(guān)知識(shí),本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧2016-08-08Spring中的@ConditionalOnProperty注解使用詳解
這篇文章主要介紹了Spring中的@ConditionalOnProperty注解使用詳解,在 spring boot 中有時(shí)候需要控制配置類是否生效,可以使用 @ConditionalOnProperty 注解來(lái)控制 @Configuration 是否生效,需要的朋友可以參考下2024-01-01SpringBoot實(shí)現(xiàn)阿里云短信接口對(duì)接的示例代碼
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)阿里云短信接口對(duì)接的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09java的各種集合為什么不安全(List、Set、Map)以及代替方案
這篇文章主要介紹了java的各種集合為什么不安全(List、Set、Map)以及代替方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10簡(jiǎn)單了解JAVA SimpleDateFormat yyyy和YYYY的區(qū)別
這篇文章主要介紹了簡(jiǎn)單了解JAVA SimpleDateFormat yyyy和YYYY的區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03