我正在研究Hibernate项目,但是我必须将日志写入文件中,然后两者才能合并在一起(文件中添加了Hibernate日志)如何禁用休眠日志。
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.11.1</version>
</dependency>
答案 0 :(得分:0)
有两种方法:
将日志记录级别设置为NONE应该会关闭所有日志记录。
由于Hibernate使用slf4j
门面,因此您应该可以使用NOPLogger
;参见Get a dummy slf4j logger?。
使用以下内容替换log4j-core
依赖项:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.30</version>
</dependency>
我已经使用了它,但是它对我不起作用:
java.util.logging.Logger.getLogger("org.hibernate") .setLevel(java.util.logging.Level.OFF);
是的,那是行不通的。根据您问题中的依赖关系,您选择了log4j
作为后端。上面的代码段正在配置java.util.logging
记录器...
查看log4j类的javadocs。
答案 1 :(得分:0)
这对我有用。
static {
// Initialized log4j2 Property and disable hibernate log
Configurator.initialize("LOGS", "Projects/log4j.properties");
Configurator.setLevel("org.hibernate", org.apache.logging.log4j.Level.OFF);
}