mybatis-plus开启sql日志打印的三种方法

 更新时间:2023年05月28日 09:59:37   作者:图图小淘气_real  
本文主要介绍了mybatis-plus开启sql日志打印的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

方法一:

mybatis-plus:
  configuration:
        log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志

或者:

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl #关闭sql日志

方法二:

logging:
  level:
    com.app.mapper: debug

方法三:

引入官方插件

        <!-- https://mvnrepository.com/artifact/p6spy/p6spy -->
        <dependency>
            <groupId>p6spy</groupId>
            <artifactId>p6spy</artifactId>
            <version>3.9.1</version>
        </dependency>

yml配置

spring:
  datasource:
    driver-class-name: com.p6spy.engine.spy.P6SpyDriver
    url: jdbc:p6spy:h2:mem:test
    ...

spy.properties配置

#3.2.1以上使用
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory
#3.2.1以下使用或者不配置
#modulelist=com.p6spy.engine.logging.P6LogFactory,com.p6spy.engine.outage.P6OutageFactory
# 自定义日志打印
logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
#日志输出到控制台
appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
# 使用日志系统记录 sql
#appender=com.p6spy.engine.spy.appender.Slf4JLogger
# 设置 p6spy driver 代理
deregisterdrivers=true
# 取消JDBC URL前缀
useprefix=true
# 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset.
excludecategories=info,debug,result,commit,resultset
# 日期格式
dateformat=yyyy-MM-dd HH:mm:ss
# 实际驱动可多个
#driverlist=org.h2.Driver
# 是否开启慢SQL记录
outagedetection=true
# 慢SQL记录标准 2 秒
outagedetectioninterval=2

mybatis-plus其他配置:

#  mybatis 的
mybatis:
  config-location: classpath:mybatis.cfg.xml    #  mybatis主配置文件所在路径
  type-aliases-package: com.demo.drools.entity  #  定义所有操作类的别名所在包
  mapper-locations: classpath:mapper/*.xml      #  所有的mapper映射文件
  configuration:
    # 开启驼峰uName自动映射到u_name
    map-underscore-to-camel-case: true
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# mybatis-plus相关配置
mybatis-plus:
  type‐aliases‐package: cn.itcast.mp.pojo  #  定义所有操作类的别名所在包
  # xml扫描,多个目录用逗号或者分号分隔(告诉 Mapper 所对应的 XML 文件位置)
  mapper-locations: classpath:mapper/*.xml
  # 以下配置均有默认值,可以不设置
  global-config:
    banner: false #是否 mybatis-plus 在控制台输出的logo
    db-config:
      #主键类型 AUTO:"数据库ID自增" INPUT:"用户输入ID",ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID";
      id-type: auto
      #字段策略 IGNORED:"忽略判断"  NOT_NULL:"非 NULL 判断")  NOT_EMPTY:"非空判断"
      field-strategy: NOT_EMPTY
      #数据库类型
      db-type: MYSQL
      logic-delete-field: deleted # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
      logic-delete-value: 1 # 逻辑已删除值(默认为 1)
      logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
  configuration:
    # 是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射
    map-underscore-to-camel-case: true
    # 如果查询结果中包含空值的列,则 MyBatis 在映射的时候,不会映射这个字段
    call-setters-on-nulls: true
    # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

mybatis-plus修改日志只打印SQL语句不打印查询结果

项目中使用了mybatis-plus baomidou,如果遇到了日志输出时 既打印SQL语句又打印查询出来的结果,如下:

如果想只打印SQL语句、不打印查询结果,解决方案如下:

增加log4j日志的配置。

logging:
  level:
   com.xxx.xxx.biz.mapper: debug

去掉mybatis-plus configuration log-impl控制台输出的配置。

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

修改后再执行DB操的输出结果:

就是log4j的形式输出,而不是控制台打印了,并且只输出SQL语句,如果debug调高级别,SQL语句也可以不输出。 

到此这篇关于mybatis-plus开启sql日志打印的三种方法的文章就介绍到这了,更多相关mybatis-plus sql日志打印内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈java中OO的概念和设计原则(必看)

    浅谈java中OO的概念和设计原则(必看)

    下面小编就为大家带来一篇浅谈java中OO的概念和设计原则(必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 关于fastjson的常见API详解

    关于fastjson的常见API详解

    这篇文章主要介绍了关于fastjson的常见API详解,Fastjson是一个Java库,可用于将Java对象转换为其JSON表示,它还可用于将JSON字符串转换为等效的Java对象,Fastjson可以处理任意Java对象,包括您没有源代码的预先存在的对象,需要的朋友可以参考下
    2023-07-07
  • SpringMVC集成Web与MVC执行流程和数据响应及交互相关介绍全面总结

    SpringMVC集成Web与MVC执行流程和数据响应及交互相关介绍全面总结

    Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,Spring MVC 角色划分清晰,分工明细,这篇文章主要介绍了SpringMVC集成Web与MVC执行流程和数据响应及交互
    2022-10-10
  • 一文看懂Mybatis中的延迟加载

    一文看懂Mybatis中的延迟加载

    这篇文章主要介绍了一文看懂Mybatis中的延迟加载,延迟加载也称为懒加载,是指在进行表的关联查询时,按照设置延迟规则推迟对关联对象的select查询,MyBatis 的延迟加载只是对关联对象的查询有迟延设置,对于主加载对象都是直接执行查询语句的,需要的朋友可以参考下
    2023-10-10
  • Java语言实现对MySql数据库中数据的增删改查操作的代码

    Java语言实现对MySql数据库中数据的增删改查操作的代码

    这篇文章主要介绍了Java语言实现对MySql数据库中数据的增删改查操作的代码,实现了连接数据库,和数据库的增删改查操作,有兴趣的可以了解一下。
    2016-12-12
  • Java正则表达式循环匹配字符串方式

    Java正则表达式循环匹配字符串方式

    这篇文章主要介绍了Java正则表达式循环匹配字符串方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Spring Boot整合Kafka+SSE实现实时数据展示

    Spring Boot整合Kafka+SSE实现实时数据展示

    本文主要介绍了Spring Boot整合Kafka+SSE实现实时数据展示
    2024-06-06
  • SpringBoot自动装配原理详解

    SpringBoot自动装配原理详解

    这篇文章主要详细介绍了SpringBoot的自动装配原理,文中通过代码示例介绍的非常详细,需要的朋友可以参考一下
    2023-04-04
  • Java异常的处理机制

    Java异常的处理机制

    这篇文章主要介绍了Java异常的处理机制,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • java基础的详细了解第五天

    java基础的详细了解第五天

    这篇文章对Java编程语言的基础知识作了一个较为全面的汇总,在这里给大家分享一下。需要的朋友可以参考,希望能给你带来帮助
    2021-08-08

最新评论