首页> Java> java教程> 正文

SpringBoot怎么打印mybatis的执行sql问题

WBOY
发布: 2023-05-15 22:55:04
转载
8271 人浏览过

    SpringBoot打印mybatis的执行sql

    1、使用场景

    应为在开发过程之中跟踪后端SQL语句,因什么原因导致的错误。需要在Debug过程之中打印出执行的SQL语句。所以需要配置一下SpringBoot之中,Mybatis打印SQL语句。

    2、具体实现

    application.properties(yml)中配置的两种方式:

    • 1. logging.level.dao包名(dao package)=debug

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

    2.1、方案一 打印所有mybatis SQL

    一下是yaml文件配置,properties文件翻译一下即可

    mybatis configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    登录后复制

    2.2、指定mapper文件所在的包

    logging: level: cn.com.demos.*.mapper: trace # 改成你的mapper文件所在包路径
    登录后复制

    SpringBoot怎么打印mybatis的执行sql问题

    比如我采用第二种方式如下:

    application.yml中 mybatis配置修改如下:

    SpringBoot怎么打印mybatis的执行sql问题

    可以看到执行的效果如下:

    SpringBoot怎么打印mybatis的执行sql问题

    SpringBoot开启mybatis的sql打印

    java项目本地调试时,为了方便更加直观的查看跟数据库交互的具体情况,有些时候需要进行sql打印。

    解决方案

    方案 一:

    springboot在默认情况下是不开启mybatis日志输出的,需要手动配置开启debug级别打印。

    由于SpringBoot默认已经引入了spring-boot-starter-logging,所以只需配置即可,如下:

    logging.level.cn.com.**.web.mapper=debug
    登录后复制

    说明:“cn.com.**.web.mapper”为mapper包路径。

    方案 二:

    增加log配置

    mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
    登录后复制

    配置后,mybatis发送的sql就会在控制台输出了,建议用第一种方式。

    以上是SpringBoot怎么打印mybatis的执行sql问题的详细内容。更多信息请关注PHP中文网其他相关文章!

    相关标签:
    来源:yisu.com
    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!