Spring Boot使用MyBatis 3打印SQL的配置

Posted Jim

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot使用MyBatis 3打印SQL的配置相关的知识,希望对你有一定的参考价值。

普通Spring下的XML文件配置:

<?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>  

记得加入红色这个即可。

Spring Boot的配置:

从logback.xml文件配置入手,主要是定位要打印日志的包路径,配置好打印的级别即可。

<?xml version="1.0" encoding="UTF-8"?>  
  
<configuration scan="true" scanPeriod="60 seconds">  
    <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">  
        <encoder>  
            <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>  
        </encoder>  
    </appender>  
    <appender name="springboot"  
        class="ch.qos.logback.core.rolling.RollingFileAppender">  
        <!-- <Encoding>UTF-8</Encoding> -->  
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
            <FileNamePattern>logs/logback/springboot_%d{yyyy-M-d}.log  
            </FileNamePattern>  
            <MaxHistory>10</MaxHistory>  
        </rollingPolicy>  
        <encoder>  
            <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>  
        </encoder>  
    </appender>  
    <appender name="smile"  
        class="ch.qos.logback.core.rolling.RollingFileAppender">  
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
            <FileNamePattern>logs/logback/smile_%d{yyyy-M-d}.log  
            </FileNamePattern>  
            <MaxHistory>10</MaxHistory>  
        </rollingPolicy>  
        <encoder>  
            <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>  
        </encoder>  
    </appender>  
  
    <logger name="org.springframework.boot" level="debug"  
        additivity="false">  
        <appender-ref ref="springboot" />  
    </logger>  
    <!-- name包必须能够扫描到所以类,包括启动类 -->  
    <logger name="com.smile" level="debug" additivity="false">  
        <appender-ref ref="smile" />  
    </logger>  
    <root level="info">  
        <appender-ref ref="stdout" />  
    </root>  
</configuration>    

小提示:如果想在Eclipse的控制台打印出日志,那么把additivity="false"改为true,这个是为了重复打印日志的选项设置,false为只打印文件。

 

参考:

http://blog.csdn.net/fan510988896/article/details/67638067(以上内容转自此篇文章)

http://blog.csdn.net/fan510988896/article/details/54409790(以上内容转自此篇文章)

以上是关于Spring Boot使用MyBatis 3打印SQL的配置的主要内容,如果未能解决你的问题,请参考以下文章

text spring boot mybatis sql打印到控制台

spring boot mybatis sql打印到控制台

mybatis-Spring boot 集成Mybatis怎么在控制台打印sql语句

spring boot 打印myabtis sql语句

Spring Boot Mybatis整合

Spring Boot(19)——使用Mybatis