當前位置:首頁 » 編程語言 » log4jxml列印sql語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

log4jxml列印sql語句

發布時間: 2022-07-28 13:13:40

『壹』 log4j怎麼配置輸出 ibaties的sql文和結果

這個不是在log4j裡面配置的,log4j只是記錄執行操作的日誌,這個需要在一個xml配置文件裡面配置 這個是配置文件需要些的代碼,只要這個配置好了,控制台就可以顯示sql語句了 這裡面的interceptor需要寫一個監聽類

『貳』 log4j.xml 如何在控制台列印jdbc執行過的sql

問題要描述清楚,使用什麼框架,是hibernate,還是mybatis,或者自己寫的資料庫連接工具。如果是hibernate,需要在hibernate屬性文件中配置hibernate.show_sql=true,或者在hibernate.cfg.xml文件中配置。
如果是mybatis,配置log4j
<category name="org.apache.ibatis" additivity="false">
<priority value="DEBUG"/>
<appender-ref ref="console"/>
</category>

『叄』 mybatis 怎麼用log4j列印sql

用log4j在控制台輸出,在web.xml中配置log4j.properties的路徑,properties文件
log4j.rootLogger=DEBUG, Console

#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG

如果不想列印spring的DEBUG輸出請把第一行的DEBUG改為INFO

『肆』 Mybatis 3.2.2 log4j.xml 沒輸出

其實問題是你搞錯輸出sql的主題類了,spring在其中做了手腳,每一個sql的日誌應該是你的列印的。所以在log4j中加類似:log4j.logger.com.zeng.spring3.test.=debug 就可以。其中com.zeng.spring3.test. 改成你的包名就行。

『伍』 mybatis怎麼配置log4j列印出sql語句

在程序調試時mybatis並沒有hibernate所提供的showsql功能,只能通過配置log4j日誌輸出級別的方式來列印sql。但網上搜到的答案幾乎都是下面的配置方式:

log4j.rootLogger=info,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
###顯示SQL語句部分
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
log4j.logger.java.sql.PreparedStatement=

rootLogger的級別是info,防止其他地方輸出debug的調試代碼(rootLogger若設為debug了,mybatis也沒必要再設置了)。但這段代碼根本沒有作用!不知是不是我使用的jar包版本比較新的緣故(3.4.1)。經過一系列的嘗試,終於找到了解決方案,直接修改層的輸出級別即可:

<loggers>
<Logger name="com.github.vita.code." level="trace" />
<root level="info">
<appender-ref ref="Console"/>
</root>
</loggers>123456123456

上面的是log4j 2的XML配置,1中對應的為log4j.logger.com.github.vita.code.=trace。這兒把輸出調成了更低的trace,可以看到更詳細的信息。

『陸』 mybatis怎麼列印mapper.xml中執行的sql

mybatis配置可以在任何時候列印SQL ,應該把所有的配置都改為DEBUG模式。

#
log4j.rootCategory=DEBUG,stdout,logfile
log4j.logger.java.sql.PreparedStatement=debug,stdout
log4j.logger.java.sql.ResultSet=debug

#stdoutconfigure
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

#logfileconfigure
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

#
#
log4j.logger.org.springframework=debug
#
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




『柒』 mybatis怎麼配置log4j列印出sql語句

一個log4j的jar包,再加一個log4j.xml就可以了
log4j.xml代碼如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n" />
</layout>
</appender>
<logger name="java.sql">
<level value="debug" />
</logger>
<logger name="org.apache.ibatis">
<level value="debug" />
</logger>
<root>
<level value="debug" />
<appender-ref ref="STDOUT" />
</root>
</log4j:configuration>

『捌』 mybatis怎麼配置log4j列印出sql語句

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{MMM dd yyyy HH:mm:ss,SSS} %-5p %c - %m%n"/>
</layout>
</appender>

<appender class="org.apache.log4j.RollingFileAppender"
name="file">
<param name="File" value="ts.log" />
<param name="MaxFileSize" value="100KB" />
<param name="MaxBackupIndex" value="2" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="=%d %-5p [%t] %-17c{2} (%13F:%L) %3x - %m%n" />
</layout>
</appender>

<category name="net.carefx" additivity="false">
<priority value="DEBUG"/>
<appender-ref ref="console"/>
</category>
<category name="org.springframework" additivity="false">
<priority value="ERROR"/>
<appender-ref ref="console"/>
</category>
<category name="org.springframework.orm.ibatis3" additivity="false">
<priority value="ERROR"/>
<appender-ref ref="console"/>
</category>
<category name="org.apache.ibatis" additivity="false">
<priority value="DEBUG"/>
<appender-ref ref="console"/>
</category>
<category name="java.sql" additivity="false">
<priority value="ERROR"/>
<appender-ref ref="console"/>
</category>

<logger name="org.apache.ibatis.common.jdbc.SimpleDataSource">
<level value="debug" />
</logger>

<logger name="org.apache.ibatis.common.jdbc.SimpleDataSource">
<level value="debug" />
</logger>

<logger name="org.apache.ibatis.common.jdbc.ScriptRunner">
<level value="debug" />
</logger>

<logger name="org.apache.ibatis.common.jdbc.SqlMapClientDelegate">
<level value="debug" />
</logger>

<logger name="java.sql.Connection">
<level value="debug" />
</logger>

<logger name="java.sql.Statement">
<level value="debug" />
</logger>

<logger name="java.sql.PreparedStatement">
<level value="debug" />
</logger>

<logger name="java.sql.ResultSet">
<level value="debug" />
</logger>
<root>
<priority value ="ERROR" />
<appender-ref ref="console" />
</root>

</log4j:configuration>