mybatis-plus 数据库日志仅打印SQL,不打印Result结果数据

文章讨论了如何在Mybatis-Plus中配置数据库日志,只打印SQL而不显示大量查询结果数据,通过将日志级别设置为Slf4jImpl并调整日志级别策略,实现生产环境下的日志优化。
摘要由CSDN通过智能技术生成

问题

mybatis-plus 数据库日志怎么才能仅打印SQL,不打印Result结果数据呢?
由于服务器上日志打印的内容过多,发现有一些内容是不需要打印的,于是思考能否做优化呢?
对于如下的日志来说,像SELECT查询的数据很多,而这部分数据的结果信息中的Row的信息我们大部分情况下是不需要查看的,那么可不可以不显示这部分信息呢?

<==    Columns: id, hi_house_code, hi_room, hi_rest_no, hi_lot, hi_floor, (如果有很多字段)
<==        Row: 1878, C3-602, 3, 2.5, 602, C3, 
<==        Row: 1879, C3-603, 3, 2.5, 603, C3, 
<==        Row: 1794, C1-502, 3, 2.5, 502, C1,
如果结果集很多,这里会有很多的数据信息。。。
<==      Total: 144

解决

原来的日志的配置如下:

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

需要进行如下修改:

mybatis-plus:
  configuration:
    #这个配置会将执行的sql打印出来,在开发或测试的时候可以用
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl

logging:
  level:
  	# Mapper所在包路径(如果想单独设置个别的包或者设置多个包也是可以的)
    com.abc.services: debug

这样日志中就不会再出现Row的信息了。

总结

1.日志级别应该根据业务进行控制调整,一般不推荐生产也是debug
2.业务应该有对应的业务日志
3.优化查询SQL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值