要输出SQL日志到文件,可以按照以下步骤进行设置:
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
log4j.appender.sql=org.apache.log4j.RollingFileAppender
log4j.appender.sql.File=/path/to/sql.log
log4j.appender.sql.MaxFileSize=10MB
log4j.appender.sql.MaxBackupIndex=10
log4j.appender.sql.layout=org.apache.log4j.PatternLayout
log4j.appender.sql.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n
这里将日志输出到/path/to/sql.log
文件中,设置了最大文件大小为10MB,最多备份10个文件。
log4j.logger.sqlLogger=DEBUG, sql
log4j.additivity.sqlLogger=false
log4j.logger.org.hibernate.SQL=DEBUG, sql
log4j.additivity.org.hibernate.SQL=false
这里将sqlLogger
和org.hibernate.SQL
的日志级别设置为DEBUG,并将其输出到名为sql
的Appender中,additivity
设置为false,表示不向上级Logger传递日志。
import org.apache.log4j.Logger;
public class Example {
private static final Logger logger = Logger.getLogger(Example.class);
public void executeSql(String sql) {
logger.debug("Executing SQL: " + sql);
// 执行SQL语句的代码
}
}
这里使用logger.debug
方法输出SQL日志。
通过以上步骤,就可以将SQL日志输出到文件中了。