springboot整合mybatis将sql打印到日志

在前台请求数据的时候,sql语句一直都是打印到控制台的,有一个想法就是想让它打印到日志里,该如何做呢?

见下面的mybatis配置文件:

[html] view plain copy
 
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  3. <configuration>  
  4.     <!-- 设置运行参数 -->  
  5.     <settings>  
  6.         <!-- 全局映射器启用缓存 -->  
  7.         <setting name="cacheEnabled" value="true" />  
  8.         <!-- 查询时,关闭关联对象及时加载以提高性能 -->  
  9.         <setting name="lazyLoadingEnabled" value="false" />  
  10.         <!-- 设置关联对象加载的形态,此处为按需加载字段(加载字段由SQL指定),不会加载关联表的所有字段,以提高性能 -->  
  11.         <setting name="aggressiveLazyLoading" value="false" />  
  12.         <!-- 对于位置的SQL查询,允许返回不同的结果集以达到通用的效果 -->  
  13.         <setting name="multipleResultSetsEnabled" value="true" />  
  14.         <!-- 允许使用列标签代替列明 -->  
  15.         <setting name="useColumnLabel" value="true" />  
  16.         <!-- 允许使用自定义的主键值(比如由程序生成的UUID 32位编码作为键值), 数据表的pk生成策略将被覆盖 -->  
  17.         <setting name="useGeneratedKeys" value="true" />  
  18.         <!-- 给予被嵌套的resultMap以字段-属性的映射支持 -->  
  19.         <setting name="autoMappingBehavior" value="PARTIAL" />  
  20.         <!-- 对于批量更新操作缓存SQL以提高性能 -->  
  21.         <setting name="defaultExecutorType" value="REUSE" />  
  22.         <!-- 数据库超过25000秒仍未响应则超时 -->  
  23.         <setting name="defaultStatementTimeout" value="25000" />  
  24.         <!-- 打印查询语句 -->  
  25.         <!-- <setting name="logImpl" value="STDOUT_LOGGING" /> -->  
  26.     </settings>  
  27. </configuration>  
[html] view plain copy
 
  1. <setting name="logImpl" value="STDOUT_LOGGING" />  

就是这一句!

如果将它注释,你的sql就可以打印进日志

如果将它放开,你的sql就打印到了控制台

那springboot中是如何配置日志打印呢?大家可以参考另一篇文章:

springboot中使用logback打印日志

原文地址:https://www.cnblogs.com/exmyth/p/8184461.html