java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > springboot整合mybatis将sql打印到日志

springboot整合mybatis将sql打印到日志的实例详解

投稿:mrr

这篇文章主要介绍了springboot整合mybatis将sql打印到日志的实例详解,需要的朋友可以参考下

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

见下面的mybatis配置文件:

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

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

总结

以上所述是小编给大家介绍的spingboot整合mybatis将sql打印到日志的实例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

您可能感兴趣的文章:
阅读全文