news 2026/8/24 16:23:32

spring boot 项目打印sql日志和结果,使用logback或配置文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
spring boot 项目打印sql日志和结果,使用logback或配置文件

在 Spring Boot 项目中使用 MyBatis 或 MyBatis-Plus 作为持久化框架时,你可以通过配置 Logback 来打印 SQL 日志及其结果。以下是一些具体的步骤和配置示例:

配置 Logback 以打印 MyBatis 或 MyBatis-Plus 的 SQL 日志
  1. 创建或修改 Logback 配置文件

    src/main/resources目录下创建或修改logback-spring.xml文件(Spring Boot 会优先加载这个文件,如果没有则加载logback.xml)。

  2. 添加 MyBatis 或 MyBatis-Plus 的 Logger 配置

    在 Logback 配置文件中,你需要为 MyBatis 或 MyBatis-Plus 的相关包添加 logger 配置。以下是一个示例配置,它会在控制台打印 SQL 语句和参数:

    xml复制代码

    <configuration>

    <!-- 其他配置 -->

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">

    <encoder>

    <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>

    </encoder>

    </appender>

    <!-- 打印 MyBatis 或 MyBatis-Plus 的 SQL 语句和参数 -->

    <logger name="com.yourpackage.mapper" level="DEBUG" additivity="false">

    <appender-ref ref="STDOUT" />

    </logger>

    <!-- 如果使用 MyBatis-Plus,可以添加以下配置来捕获更多日志 -->

    <logger name="com.baomidou.mybatisplus" level="DEBUG" />

    <!-- 根 logger 配置 -->

    <root level="INFO">

    <appender-ref ref="STDOUT" />

    </root>

    </configuration>

    请注意,你需要将com.yourpackage.mapper替换为你自己的 Mapper 接口所在的包名。

  3. 配置 MyBatis 或 MyBatis-Plus

    application.propertiesapplication.yml文件中,你可以配置 MyBatis 或 MyBatis-Plus 的日志实现。虽然 Logback 的配置已经能够捕获 SQL 日志,但你也可以通过以下方式显式设置日志实现:

    • 对于 MyBatis:

      properties复制代码

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

      或者,在mybatis-config.xml中配置:

      xml复制代码

      <configuration>

      <settings>

      <setting name="logImpl" value="STDOUT_LOGGING"/>

      </settings>

      </configuration>

    • 对于 MyBatis-Plus:

      properties复制代码

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

    然而,请注意,这些设置通常不是必需的,因为 Logback 的配置已经足够捕获 SQL 日志。这些设置更多地是为了在没有使用Logback 或需要显式指定日志实现时使用。

  4. 重启应用程序

    修改配置后,重启你的 Spring Boot 应用程序以使更改生效。

  5. 验证日志输出

    运行你的应用程序并执行一些数据库操作,然后检查控制台以确认 SQL 日志和参数是否正确打印。

注意事项
  • 确保你的 Mapper 接口和 XML 映射文件(如果使用)已经正确配置,并且能够被 Spring Boot 扫描到。
  • 如果你的项目中有多个数据源或使用了复杂的配置,请确保你的 Logback 配置能够正确地捕获所有相关的日志。
  • 如果你的 SQL语句很长或包含敏感信息,你可能需要调整 Logback的配置以限制日志输出的长度或隐藏敏感信息。

通过以上步骤,你应该能够在 Spring Boot 项目中使用 Logback 打印 MyBatis 或 MyBatis-Plus 的 SQL 日志及其结果。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/23 17:48:25

GPT-OSS-Safeguard:120B大模型安全推理新工具

GPT-OSS-Safeguard&#xff1a;120B大模型安全推理新工具 【免费下载链接】gpt-oss-safeguard-120b 项目地址: https://ai.gitcode.com/hf_mirrors/openai/gpt-oss-safeguard-120b 导语&#xff1a;OpenAI推出基于GPT-OSS架构的1200亿参数安全推理模型GPT-OSS-Safeguar…

作者头像 李华
网站建设 2026/8/19 18:11:28

HY-MT1.5-1.8B实时语音翻译系统集成指南

HY-MT1.5-1.8B实时语音翻译系统集成指南 随着多语言交流需求的不断增长&#xff0c;高效、准确且低延迟的实时翻译系统成为智能硬件与全球化服务的核心组件。腾讯开源的混元翻译大模型HY-MT1.5系列&#xff0c;凭借其在翻译质量、部署灵活性和功能丰富性上的突出表现&#xff…

作者头像 李华
网站建设 2026/8/21 22:27:35

腾讯HY-MT1.5教程:翻译记忆库集成与应用

腾讯HY-MT1.5教程&#xff1a;翻译记忆库集成与应用 1. 引言 随着全球化进程的加速&#xff0c;高质量、低延迟的机器翻译需求日益增长。腾讯近期开源了其新一代混元翻译大模型 HY-MT1.5&#xff0c;包含两个版本&#xff1a;HY-MT1.5-1.8B 和 HY-MT1.5-7B&#xff0c;分别面…

作者头像 李华
网站建设 2026/8/23 10:14:55

HY-MT1.5-1.8B实战:移动端离线翻译SDK集成

HY-MT1.5-1.8B实战&#xff1a;移动端离线翻译SDK集成 1. 引言 1.1 背景与需求 随着全球化进程的加速&#xff0c;跨语言交流已成为日常办公、旅游出行和内容消费中的高频需求。然而&#xff0c;传统云端翻译服务在隐私保护、网络依赖和响应延迟方面存在明显短板&#xff0c…

作者头像 李华
网站建设 2026/8/10 4:08:12

LCD显示屏与STM32接口设计实战案例

从零构建STM32驱动的LCD人机界面&#xff1a;FSMC与SPI实战全解析你有没有遇到过这样的场景&#xff1f;手头有个STM32项目&#xff0c;功能逻辑都写好了&#xff0c;结果一到显示环节就卡壳——屏幕闪烁、花屏、刷新慢得像幻灯片。别急&#xff0c;这几乎是每个嵌入式开发者都…

作者头像 李华
网站建设 2026/8/22 7:07:29

芯天下转道港股:9个月营收3.8亿,利润842万 红杉是股东

雷递网 雷建平 1月10日芯天下技術股份有限公司&#xff08;简称&#xff1a;“芯天下”&#xff09;日前递交招股书&#xff0c;准备在港交所上市。于2023年、2024年及截至2025年9月30日止九个月&#xff0c;芯天下就上一年度宣派及派付末期股息分别为零、3090万元及2060万元。…

作者头像 李华