2011-12-09 42 views
0

如何在使用带批注的iBatis时记录SQL查询。使用注释的iBatis - SQL查询日志记录

public interface a { 
    @Select(select * from tableName where id=#{id}) 
    public tablePojo getObject(@Param("id") String id); 
} 

如何在传递id值时记录iBatis执行的查询?

回答

0

您必须激活java.sql包的日志。

执行此操作后,您将获得日志中的查询,参数和行。

如果您使用log4j来进行记录,你可以在log4j.properties文件中添加这样的事情:

log4j.rootLogger=fatal, consoleAppender 

log4j.logger.java.sql=DEBUG, consoleAppender 

log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender 
log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.consoleAppender.layout.ConversionPattern=%d{dd/MM/yyyy\tHH:mm:ss}\t%C\t%p\t%m%n 

你也可以在控制台中添加一个记录器为org.apache.ibatis和看其他额外的东西:

log4j.logger.org.apache.ibatis=DEBUG, consoleAppender 
0

如果使用maven,则需要在maven上添加“JAVA.UTIL.LOGGING”基础SLF4J,并且配置java日志记录logging.properties,因为mybatis依赖关系由默认使用slf4j

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-jdk14</artifactId> 
    <version>1.7.7</version> 
</dependency>