您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

springBoot中打印mybatis的sql执行时间、完整的sql语句

bubuko 2022/1/25 19:36:59 java 字数 3257 阅读 1114 来源 http://www.bubuko.com/infolist-5-1.html

springBoot中打印mybatis的sql执行时间、完整的sql语句 ...

springBoot中打印mybatis的sql执行时间、完整的sql语句

 

有时候我们程序的接口比较耗时,需要优化,这时我们可能需要了解该接口执行了哪些sql语句以及耗时。

 

maven依赖:

  <!--监控sql日志,log4jdbc监控jdbc层-->
        <dependency>
            <groupId>org.bgee.log4jdbc-log4j2</groupId>
            <artifactId>log4jdbc-log4j2-jdbc4.1</artifactId>
            <version>1.16</version>
        </dependency>

 

2.引入配置文件 log4jdbc.log4j2.properties

log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator

 

3.logback-spring.xml 里加入如下内容

  <logger name="jdbc.connection" level="OFF"/>
    <logger name="jdbc.resultset" level="OFF"/>
    <logger name="jdbc.resultsettable" level="OFF"/>
    <logger name="jdbc.audit" level="OFF"/>
    <!--ps:sqltiming和sqlonly差别是多打印了sql语句的耗时,如果不想要这个时间可以修改筛选里面的项。-->
    <logger name="jdbc.sqltiming" level="INFO"/>
    <logger name="jdbc.sqlonly" level="OFF"/>

 

4、修改yml:

      #   driver-class-name: com.mysql.jdbc.Driver
      #   url: jdbc:mysql://39.100.153.187:3306/common-crm?useSSL=false&characterEncoding=utf8&autoReconnect=true
      driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
      url: jdbc:log4jdbc:mysql://39.100.153.187:3306/common-crm?useSSL=false&characterEncoding=utf8&autoReconnect=true

  driver-class-name 修改为:net.sf.log4jdbc.sql.jdbcapi.DriverSpy

  url 修改为:jdbc:log4jdbc:mysql:// (在原来的jdbc后面加了:log4jdbc:)

完成!!!

 

效果:

技术分享图片

 

springBoot中打印mybatis的sql执行时间、完整的sql语句

原文:https://www.cnblogs.com/dw3306/p/13229825.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶