转:
log4j.xml简单配置实现在控制台打印sql执行语句
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
先上配置代码!
【要在log4j.xml中增加的在控制台打印sql的配置:】
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <!--控制台输出sql执行过程--> <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" /> </layout> </appender> <logger name="com.spring.mapperinterface" additivity="true"> <level value="DEBUG" /> </logger> <root> <level value="INFO"></level> <appender-ref ref="CONSOLE"/> </root> </log4j:configuration>
name="CONSOLE"表示输出在控制台
需要注意的是,log4j.xml标签的顺序。否则配置不成功,sql执行语句不会在控制台上打印。
【如果顺序不对,就会报上面的异常,需要按照下面的顺序调整标签】
log4j.xml标签的顺序为
-
1 <log4j:configuration> 2 <renderer></renderer> 3 ... 4 <appender></appender> 5 ... 6 <plugin></plugin> 7 ... 8 <logger></logger> 9 ... 10 <category></category> 11 ... 12 <root></root> 13 ... 14 <loggerfactory></loggerfactory> 15 ... 16 <categoryfactory></categoryfactory> 17 ... 18 </log4j:configuration>
这里特别说明一下,com.spring.mapperinterface也就是你spring-mybatis.xml文件里自动扫描的base-package的路径。
<context:component-scan base-package="com.spring.mapperinterface"/>
【有一种说法是要打印日志的目标的包空间,也有说是mybatis的xml的命名空间,这个还没测试】