如何控制Mybatis的SQL日志输出
1个回答
展开全部
您好,很高兴为您解答。
使用环境:Mybatis_3.2.8 + Log4j2_2.1
首先要说明的是:
Mybatis是用Mapper类的全路径名,作为logger的名称的。
Mybatis中,打印SQL语句的日志级别是DEBUG,而打印SQL执行结果集的日志级别是TRACE。
比如,我们的应用是: com.test.app
而mapper类所在的路径为: com.test.app.dao
则我们可以分别控制应用的业务日志和SQL日志的输出。
如下的Log4j2.xml将输出所有业务日志,以及SQL语句日志
引用
<Loggers>
<Logger name="com.test.app.dao" 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.dao" 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>
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~ O(∩_∩)O~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询