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

相关推荐
咏方舟【长江支流】12 分钟前
【开源】跨语言·跨平台·跨数据库(6) ——一种ORM缓存的接口实现和容错处理
数据库·缓存·开源·咏方舟-长江支流·用宝框架
努力进修21 分钟前
破除工业 AI 业务落地壁垒:多模时序融合架构重塑设备全维度数据价值
数据库·人工智能·架构
静水楼台x32 分钟前
spring security
java·数据库·spring
深度研习笔记1 小时前
OpenCV工业视觉进阶14|SQLite违规数据库存储+历史记录查询+Excel报表导出,完成项目商用数据闭环(验收必备)
数据库·opencv·sqlite
要开心吖ZSH3 小时前
一文搞懂:JDK 21 虚拟线程 vs N种异步方案,到底该怎么选?
java·数据库·jdk·虚拟线程
guodingdingh8 小时前
软件开发工作问题总结0718
java·开发语言·数据库
GuWenyue10 小时前
Cursor黑盒拆解!1套LangChain.js手写Mini编程Agent,自动生成React项目,效率提升60%
前端·数据库·人工智能
Csvn11 小时前
📊 SQL 入门 Day 8:集合操作 — 用 SQL 做数学里的"并交差"
后端·sql
Miao1213111 小时前
某海外住宿平台如何在大规模场景下实现指标一致性:Minerva 指标平台实践
大数据·数据库·人工智能
CodexDave12 小时前
MySQL事务隔离级别与MVCC机制解析
前端·数据库·mysql·nginx·性能优化·负载均衡