A. 如何控制Mybatis的SQL日志输出
使用环境:Mybatis_3.2.8 + Log4j2_2.1
首先要说明的是:
Mybatis是用Mapper类的全路径名,作为logger的名称的。
Mybatis中,打印SQL语句的日志级别是DEBUG,而打印SQL执行结果集的日志级别是TRACE。(因为有些SQL可能语句简单,但是结果集很多,分开级别,有利于用户控制输出。)
记住这两点,对控制Mybatis的SQL日志输出很重要。
比如,我们的应用是:
com.test.app
而mapper类所在的路径为:
com.test.app.
则我们可以分别控制应用的业务日志和SQL日志的输出。
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志
引用
<Loggers>
<Logger name="com.test.app." additivity="false" level="DEBUG">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志,SQL语句执行结果日志
引用
<Loggers>
<Logger name="com.test.app." additivity="false" level="TRACE">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
B. mybatis-plus日志输出sql配置(控制台能输出sql日志没有sql问题)
看下spring boot配置文件中的mybatis部分
一般配置debug级别日志,基本日志都能输出了,之前配置,这个是标准的输出,控制台正常输出,但是不会写到日志文件中,所以一旦上传测试或生产,自动过滤sql部分日志
但是我们也希望在测试环境也能看
改成如下配置
另外日志级别改为debug,可以直接
就整体都是debug了
如果需要局部控制,可以配置多个level
只要是com.xxxx,com.aaa下的日志输出均是debug
C. 如何控制Mybatis的SQL日志输出
使用环境:Mybatis_3.2.8 + Log4j2_2.1
首先要说明的是:
Mybatis是用Mapper类的全路径名,作为logger的名称的。
Mybatis中,打印SQL语句的日志级别是DEBUG,而打印SQL执行结果集的日志级别是TRACE。
比如,我们的应用是: com.test.app
而mapper类所在的路径为: com.test.app.
则我们可以分别控制应用的业务日志和SQL日志的输出。
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志
引用
<Loggers>
<Logger name="com.test.app." additivity="false" level="DEBUG">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志,SQL语句执行结果日志
引用
<Loggers>
<Logger name="com.test.app." additivity="false" level="TRACE">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
D. 怎么修改logback输出的mybatis的日志的格式
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 当发生滚动时 TimeBasedRollingPolicy滚动策略 根据时间来制定滚动策略 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 按天回滚 daily -->
<!-- local
<fileNamePattern>/Users/liyixiang/Documents/logs/xxx-xxx-${appPort}-%d{-MM-dd}.log</fileNamePattern>
-->
<!-- log.dir 在maven profile里配置 -->
<fileNamePattern>/logs/xxx-xxx-${appPort}-%d{-MM-dd}.log</fileNamePattern>
<!-- 控制保留的归档文件的最大数量 日志最大的历史 5天 -->
<maxHistory>5</maxHistory>
</rollingPolicy>
<!-- 日志格式化 -->
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - [%msg]%n</pattern>
</encoder>
<p>
</appender>
</p>
<p>
<br>
</p>
<p>
</p><pre class="brush:xml; toolbar: true; auto-links: false;">具体的pattern可以查询logback pattern like this --> </pre>
<p></p>
E. 如何控制Mybatis的SQL日志输出
您好,很高兴为您解答。
使用环境:Mybatis_3.2.8 + Log4j2_2.1
首先要说明的是:
Mybatis是用Mapper类的全路径名,作为logger的名称的。
Mybatis中,打印SQL语句的日志级别是DEBUG,而打印SQL执行结果集的日志级别是TRACE。
比如,我们的应用是: com.test.app
而mapper类所在的路径为: com.test.app.
则我们可以分别控制应用的业务日志和SQL日志的输出。
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志
引用
1
2
3
4
5
6
7
8
9
10
<Loggers>
<Logger name="com.test.app." additivity="false" level="DEBUG">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志,SQL语句执行结果日志
引用
1
2
3
4
5
6
7
8
9
10
<Loggers>
<Logger name="com.test.app." additivity="false" level="TRACE">
<AppenderRef ref="sql_log"/>
<AppenderRef ref="Console"/>
</Logger>
<Logger name="com.test.app" additivity="false" level="TRACE">
<AppenderRef ref="biz_debug"/>
<AppenderRef ref="Console"/>
</Logger>
</Loggers>
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
F. mybatis中怎么执行truncate
myts是对jdbc的封装,一样可以执行sql语句,而truncate也算sql语句,所以直接写sql语句配置在mapper.xml中,再用你惯用额方式调用即可。
1:在Mybatis配置文件中加上以下配置:
<!-- 选择log4j为Mybatis的记录日志文件-->
<settings><setting name="logImpl" value="LOG4J"/></settings>
SQL,参数,总行数都有,是不是很好用。
G. 用mybatis日志如何配置
首先配置 log4j日志文件
ibatis配置
log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
导入依赖日志包 log4j
<!-- SLFJ 可依赖到log4j-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.7</version>
</dependency>