Hibernate未登录到Log4J
我有一个使用hibernate的tomcat应用程序。当我进入WEB-INF并将log4j.properties更改为以下内容时Hibernate未登录到Log4J,hibernate,log4j,Hibernate,Log4j,我有一个使用hibernate的tomcat应用程序。当我进入WEB-INF并将log4j.properties更改为以下内容时 log4j.logger.net.sf.hibernate.SQL=trace 但是我在使用的日志文件中没有看到任何内容 log4j.rootLogger=debug, stdout .... log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=hibernate.lo
log4j.logger.net.sf.hibernate.SQL=trace
但是我在使用的日志文件中没有看到任何内容
log4j.rootLogger=debug, stdout
....
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=hibernate.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
对于我自己的应用程序来说,日志记录似乎工作得很好
有什么想法吗?对此不确定,但我认为较新的Hibernate版本可能会使用slf4j而不是log4j。您可以通过使用slf4j-log4j-桥接器克服此问题。如果您使用的是Maven,那么依赖关系是
<!-- slf4j -> log4j bridge (some libraries use slf4j) -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.6</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
org.slf4j
slf4j-log4j12
1.5.6
罐子
编写
根据需要修改版本。对此不确定,但我认为较新的Hibernate版本可能会使用slf4j而不是log4j。您可以通过使用slf4j-log4j-桥接器克服此问题。如果您使用的是Maven,那么依赖关系是
<!-- slf4j -> log4j bridge (some libraries use slf4j) -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.6</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
org.slf4j
slf4j-log4j12
1.5.6
罐子
编写
根据需要修改版本。尝试以下操作,因为hibernate不再位于
net.sf
包层次结构下:
log4j.logger.org.hibernate.SQL=trace
尝试以下操作,因为hibernate不再位于
net.sf
包层次结构下:
log4j.logger.org.hibernate.SQL=trace
我正在使用。。。我对sli4j不太熟悉,但网站上说“不需要setter方法,不需要特殊注释,只需声明它,让sli4j完成其余的工作,最终的和已经设置好的记录器将被跳过,sli4j根本不会试图覆盖它们。”。问题可能是Hibernate Logger被声明为“private static final”,在这种情况下sli4j不会注入它自己的Logger吗?我尝试添加了这个,我认为它工作了x2检查我正在使用。。。我对sli4j不太熟悉,但网站上说“不需要setter方法,不需要特殊注释,只需声明它,让sli4j完成其余的工作,最终的和已经设置好的记录器将被跳过,sli4j根本不会试图覆盖它们。”。问题可能是Hibernate记录器被声明为“private static final”,在这种情况下,sli4j不会注入它自己的记录器?我尝试添加它,但我认为它在检查您的hibernate配置xml文件时起作用。是否有“hibernate.show_sql”属性设置为false?检查您的hibernate配置xml文件。是否有“hibernate.show_sql”属性设置为false?谢谢,但我使用的是旧版本。我想当hibernate在
net.sf
下时,它还没有使用slf4j。只是想知道您是否真的发现了问题。谢谢,但我使用的是旧版本。我认为当hibernate处于net.sf
下时,它还没有使用slf4j。只是想知道你是否真的发现了问题。