mybatis怎么打印mapper.xml中执行的sql

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis怎么打印mapper.xml中执行的sql相关的知识,希望对你有一定的参考价值。

mybatis配置可以在任何时候打印SQL ,应该把所有的配置都改为DEBUG模式。

# This is the configuring for logging displayed in the Application Server
log4j.rootCategory=DEBUG,stdout,logfile
log4j.logger.java.sql.PreparedStatement=debug,stdout
log4j.logger.java.sql.ResultSet=debug
 
#stdout configure
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern= %d %p [%c] - <%m>%n
 
#logfile configure
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=../logs/jb.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern= %d %p [%c] - <%m>%n
 
# Control logging for other open source packages
# Changing the log level to DEBUG when debug
log4j.logger.org.springframework=debug
# Changing the log level to DEBUG will display SQL Hibernate generated
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.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug

   
   
  

参考技术A ?xml version="1.0" encoding="UTF-8"?

 打印查询语句 

     打印SQL只需要加一个setting就可以了。  
 mybatis的日志打印方式比较多,SLF4J | LOG4J | LOG4J2 | JDK_LOGGING |  
  COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING,可以根据自己的需要进行配置 

这样就行了
参考技术B 用log4j在控制台输出,在web.xml中配置log4j.properties的路径,properties文件log4j.rootLogger=DEBUG,Console#Consolelog4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=%d[%t]%-5p[%c]-%m%nlog4j.logger.java.sql.ResultSet=INFOlog4j.logger.org.apache=INFOlog4j.logger.java.sql.Connection=DEBUGlog4j.logger.java.sql.Statement=DEBUGlog4j.logger.java.sql.PreparedStatement=DEBUG如果不想打印spring的DEBUG输出请把第一行的DEBUG改为INFO

将mapper.xml中执行的sql打印到控制台上

如果你的项目是springboot项目
在application.yml配置文件中进行如下配置

#mybatis-plus
mybatis-plus.mapper-locations= mapper.xml的文件路径(classpath*:**/mapper/**/*Mapper.xml)
# 将日志打印到控制台
mybatis-plus.configuration.map-underscore-to-camel-case=true
# mp 中的sql 执行的删除 delete实际上是修改dr=1
mybatis-plus.global-config.logic-delete-value=1
# mp 中的sql 执行的不删除时 dr=0
mybatis-plus.global-config.logic-not-delete-value=0
# mp 添加时主键类型为uuid
mybatis-plus.global-config.db-config.id-type=uuid

以上是关于mybatis怎么打印mapper.xml中执行的sql的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis的Mapper.xml怎么同时执行多个sql语句

MyBatis的Mapper.xml怎么同时执行多个sql语句

MyBatis的Mapper.xml文件中没有提示怎么办?

mybatis如何通过接口查找对应的mapper.xml及方法执行详解

mybatis 怎么调用mapper.xml中的方法

mapper.xml的使用