【打印SQL执行日志】⭐️Mybatis-Plus通过配置在控制台打印执行日志

目录

前言

[一、Mybatis-Plus 开启日志的方式](#一、Mybatis-Plus 开启日志的方式)

二、测试

三、日志分析

章末


前言

小伙伴们大家好,相信大家平时在处理问题时都有各自的方式,最常用以及最好用的感觉还是断点调试,但是涉及到操作数据库的执行时,默认的话在控制台是看不到是否执行成功的,对于操作数据库的调试不是很友好,如果可以在控制台实时读取执行情况,对于我们来说可以更好的发现问题所在

一、Mybatis-Plus 开启日志的方式

1.application.properties配置文件

XML 复制代码
# 开启 MyBatis-Plus SQL 打印功能
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

2.application.yml配置文件

XML 复制代码
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

二、测试

在测试项目中创建个简单的新增用户操作的接口,使用postman接口测试工具发送请求,测试启动日志前后的控制台情况

1.未启动日志,控制台信息如下,查看数据库,该条信息成功插入

2.启动日志,控制台打印中间使用到的sql语句以及参数替换

三、日志分析

可以看到控制台中除了打印出执行的sql语句,还有些别的信息,具体如下

  • Registering transaction synchronization for SqlSession: Spring 正在注册用于事务管理的 SqlSession 同步。
  • JDBC Connection [HikariProxyConnection@1873059881 wrapping com.mysql.cj.jdbc.ConnectionImpl@755ab072] will be managed by Spring: JDBC 连接将由 Spring 管理,这通常是通过 Spring 的事务管理机制来管理连接的。
  • Preparing: Insert into customers (name,age) values(?,?): 执行的 SQL 语句的准备阶段,其中 ? 是占位符,表示参数化查询。
  • Parameters: 乌鸡王(String), 88(Integer): SQL 语句的参数,即将被插入到数据库中的值。
  • <== Updates: 1: 一条记录已经被成功地插入到数据库中,影响了一行数据。
  • Releasing transactional SqlSession: 事务中的 SqlSession 被释放。
  • Transaction synchronization committing SqlSession: 事务同步正在提交 SqlSession。
  • Transaction synchronization deregistering SqlSession: 事务同步正在取消注册 SqlSession。
  • Transaction synchronization closing SqlSession: 这表示事务同步正在关闭 SqlSession。

章末

文章到这里就结束了~

------------------ END -------------------------

相关推荐
张璐月2 小时前
mysql join语句、全表扫描 执行优化与访问冷数据对内存命中率的影响
数据库·mysql
全干engineer4 小时前
ClickHouse 入门详解:它到底是什么、优缺点、和主流数据库对比、适合哪些场景?
数据库·clickhouse
Hellyc6 小时前
基于模板设计模式开发优惠券推送功能以及对过期优惠卷进行定时清理
java·数据库·设计模式·rocketmq
lifallen6 小时前
Paimon LSM Tree Compaction 策略
java·大数据·数据结构·数据库·算法·lsm-tree
{⌐■_■}10 小时前
【Kafka】登录日志处理的三次阶梯式优化实践:从同步写入到Kafka多分区批处理
数据库·分布式·mysql·kafka·go
isNotNullX10 小时前
数据中台架构解析:湖仓一体的实战设计
java·大数据·数据库·架构·spark
睿思达DBA_WGX13 小时前
由 DB_FILES 参数导致的 dg 服务器无法同步问题
运维·数据库·oracle
袋鼠云数栈14 小时前
使用自然语言体验对话式MySQL数据库运维
大数据·运维·数据库·后端·mysql·ai·数据治理·数栈·data+ai
渣渣盟14 小时前
掌握MySQL函数:高效数据处理指南
sql·mysql·adb·dba