环境:项目非完全spring项目,没有spring的配置文件。执行sql时老是不打印sql语句。因此进行修改,过程比较坎坷,记录一下。
我尝试使用log4j和log4j2进行配置 最终把这两种全部配置记录上
Log4j配置
如果项目用的是log4j需要进行配置打印sql的步骤
- 首先引入log4j的包
- 配置一下log4j的配置文件
#STDOUT 表示配置sql语句输出
log4j.rootLogger=ERROR,STDOUT
#xxx代表你项目中的mapper路径
log4j.logger.xxx.xxx.xxx=DEBUG
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.Target=System.out
#log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %-5p %c{1.}:%L - %m%n
Log4j2配置
如果使用log4j2需要进行配置打印sql的步骤
- 引入log4j2包
- 配置log4j2配置文件
<Configuration status="WARN">
<Appenders>
<Console name="myConsole" target="SYSTEM_OUT">
<PatternLayout pattern="[%d{MM-dd HH:mm:ss} %-5p] [%t] %c{2\} - %m%n%ex"/>
</Console>
<Console name="myConsole2" target="STDOUT">
<PatternLayout pattern="[%d{MM-dd HH:mm:ss} %-5p] [%t] %c{2\} - %m%n%ex"/>
</Console>
<RollingFile name="activexAppender" fileName="../log/jxedtgouchescf.log" filePattern="../log/jxedtgouchescf.log.%d{yyyy-MM-dd}.log">
<PatternLayout>
<Pattern>[%d{MM-dd HH:mm:ss SSS} %-5level] [%t] %c{3} - %m%n%ex</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="myConsole"/>
<AppenderRef ref="activexAppender"/>
</Root>
<!--这里的name为你自己mapper的地址-->
<Logger name="xxx.xxx.mapper" level="DEBUG">
<AppenderRef ref="myConsole"/>
</Logger>
</Loggers>
</Configuration>
ok这样就能打出来具体的执行sql了
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - ==> Preparing: SELECT COUNT(1) FROM table WHERE (state = ?)
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - ==> Preparing: SELECT COUNT(1) FROM table WHERE (state = ?)
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - ==> Parameters: 0(Integer)
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - ==> Parameters: 0(Integer)
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - <== Total: 1
[12-13 17:20:32 DEBUG] [main] cxxxx.xxxx.xxx.selectCount - <== Total: 1
这里顺便提一下mybatisplus开启打印日志的配置方法适用于spring-boot