基于mybatis, logback,使用log4jdbc打印并格式化SQL
首先引入jar包
<!--SQL打印与格式化 -->
<dependency>
<groupId>com.googlecode.log4jdbc</groupId>
<artifactId>log4jdbc</artifactId>
<version>1.2</version>
</dependency>
修改数据源配置
修改前:
#修改前
driverClass=com.mysql.cj.jdbc.Driver
driverUrl=jdbc:mysql://xxxxx
修改后:
#修改后
driverClass=net.sf.log4jdbc.DriverSpy
driverUrl=jdbc:log4jdbc:mysql://xxxxx
额外的配置
classpath下新建log4jdbc.properties,可以指定数据库连接驱动
##该属性配合log4jdbc使用,指定mysql连接驱动
log4jdbc.auto.load.popular.drivers=false
log4jdbc.drivers=com.mysql.cj.jdbc.Driver
#mysql5以下的驱动为:com.mysql.jdbc.Driver
#log4jdbc.drivers=com.mysql.cj.jdbc.Driver
logback配置
<!-- log4jdbc SQL格式化, 打印到CONSOLE和FILE -->
<logger name="jdbc.connection" additivity="false" level="OFF">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
<logger name="jdbc.resultset" additivity="false" level="OFF">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
<logger name="jdbc.audit" additivity="false" level="OFF">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
<logger name="jdbc.sqlonly" additivity="false" level="OFF">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
<logger name="jdbc.sqltiming" additivity="false" level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</logger>
log4jdbc官网:https://code.google.com/archive/p/log4jdbc/