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

相关推荐
Gauss松鼠会13 小时前
【GaussDB】GaussDB 组件、节点和AZ故障仲裁与切换流程
运维·服务器·数据库·gaussdb
myy-learn14 小时前
32 SQLITE数据库
jvm·数据库·sqlite
JavaPub-rodert14 小时前
Redis 和 MySQL 如何保证数据一致性?从业务方案到底层原理完整讲解
数据库·redis·mysql
大牧师14 小时前
TypeORM 学习教程
数据库·sql·学习·node.js·orm·nest.js·typeorm
IvorySQL14 小时前
PostgreSQL 日报| PGQ 功能发现严重缺陷(9 月 4 日)
数据库·postgresql
后台模板学习14 小时前
用 IM 即时聊天项目一次讲清消息去重算法的踩坑与解决方案
java·数据库·spring
imbackneverdie14 小时前
国内有哪些比较全面的生物医学相关数据库?
大数据·数据库·人工智能·ai·信息可视化·aigc·科研
数字智核15 小时前
2026昆山工厂空压机突然停机怎么办?找谁抢修
服务器·网络·数据库
AAA代码批发商15 小时前
Days 39 Linux C 开发之 SQLite 数据库完整学习笔记
linux·c语言·数据库
笑梦无境15 小时前
mysql的安装及配置(3)
数据库·mysql·adb