【打印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 -------------------------

相关推荐
码农阿豪3 小时前
行标识符的抉择:深入理解数据库领域的OID与ROWID机制
数据库·oracle
不剪发的Tony老师4 小时前
MyCLI:一个增强型MySQL命令行客户端
数据库·mysql
SHANGHAILINGEN4 小时前
2400 万个未培养病毒重新定义病毒多样性
数据库·测序·组学
刘晨鑫14 小时前
PostgreSQL日常维护
数据库·postgresql
xiaokangzhe4 小时前
PG数据库日常应用
数据库·oracle
XDHCOM4 小时前
MySQL ER_DD_VERSION_INSTALLED报错解析,数据字典版本问题,故障修复与远程处理指南
数据库·mysql
yaoyouzhong5 小时前
MySQL 批量插入详解:快速提升大数据导入效率的实战方法
大数据·数据库·mysql
NineData6 小时前
NineData V5.0 产品发布会:让 AI 成为数据管理的驱动力,4月16日!
数据库·人工智能·ai编程
高梦轩7 小时前
PG数据库
数据库·oracle
云草桑7 小时前
DBA mssql 解决排序规则冲突 QA prod 和开发配置都是一样的服务器排序规则 为啥开发环境的的存储过程需要 加这个COLLATE Chinese_PRC_CI_AS
数据库·dba·mssql