mybatis对输出sql的配备修改

mybatis对输出sql的配置修改
在MyBatis(iBatis3)出来之前,ibatis自己带了log4j,如果要输出最后生成的数据库sql,只需要在log4j配置一下就可以了:
log4j.logger.com.ibatis=DEBUG, ibatis 
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG, ibatis 
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG, ibatis 
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG, 
ibatis 
log4j.logger.java.sql.Connection=DEBUG, ibatis 
log4j.logger.java.sql.Statement=DEBUG, ibatis 
log4j.logger.java.sql.PreparedStatement=DEBUG, ibatis 
log4j.logger.java.sql.ResultSet=DEBUG, ibatis 


现在MyBatis已经没有配置log4j了,或者说修改了输出sql的策略,需要使用log4j.xml(话说用资源文件其实也是一样的,不过xml确实方便点,自己写个servlet就找到路径了,轻松愉快)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    
    <!-- Console output -->

    <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} %m  (%F:%L) \n"/>
        </layout>
    </appender>
    
    <category name="java.sql">
        <priority value="debug" />
    </category>
    <category name="com.ibatis">
        <priority value="debug" />
    </category>
    <root>
        <priority value ="error" />
        <appender-ref ref="STDOUT" />
    </root>
    
</log4j:configuration>


内容就不解释了……
另外,表忘记给你的项目添加commons-logging.jar

恩,如果你非要用log4j.jar,就用log4j的xml格式吧~阿门……
1 楼 chuten 2011-07-29  
好用顶一个
2 楼 zcl_csd 2011-11-24  
我按照你的配置怎么还是不打印sql语句啊 只是
DEBUG [http-9999-1] - Fetching JDBC Connection from DataSource
DEBUG [http-9999-1] - Returning JDBC Connection to DataSource
DEBUG [http-9999-1] - Fetching JDBC Connection from DataSource
3 楼 xuliduo 2011-11-28  
zcl_csd 写道
我按照你的配置怎么还是不打印sql语句啊 只是
DEBUG [http-9999-1] - Fetching JDBC Connection from DataSource
DEBUG [http-9999-1] - Returning JDBC Connection to DataSource
DEBUG [http-9999-1] - Fetching JDBC Connection from DataSource

看你输出的样子,应该是log4j的配置文件都没被读进去……你看看的servelet或者预读配置文件的类路径对不对