Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
了解Hibernate日志记录类别_Hibernate_Logging_Categories - Fatal编程技术网

了解Hibernate日志记录类别

了解Hibernate日志记录类别,hibernate,logging,categories,Hibernate,Logging,Categories,我在理解Hibernate日志类别时遇到了一些问题。我的假设基于以下文件: 我使用log4j.properties配置Hibernate的日志记录级别,使用以下命令: log4j.logger.org.hibernate=DEBUG log4j.additivity.org.hibernate.SQL=false 输出所有类别hibernate的信息(org.hibernate.loader、org.hibernate.jdbc、org.hibernate.engine等) 我真正想要的是在调

我在理解Hibernate日志类别时遇到了一些问题。我的假设基于以下文件:

我使用log4j.properties配置Hibernate的日志记录级别,使用以下命令:

log4j.logger.org.hibernate=DEBUG
log4j.additivity.org.hibernate.SQL=false
输出所有类别hibernate的信息(org.hibernate.loader、org.hibernate.jdbc、org.hibernate.engine等)

我真正想要的是在调试级别记录org.hibernate.SQL类别。我尝试了以下各种组合:

log4j.logger.org.hibernate=INFO
log4j.logger.org.hibernate.SQL=DEBUG
log4j.additivity.org.hibernate.SQL=false
但它似乎从未“看到”SQL类别,只使用org.hibernate日志级别

我想做的事可能吗?如果是这样的话,我在努力让它工作的过程中犯了什么错误


谢谢你的建议

我想您忘记在
调试之后指定appender了:-

试试这个:-

log4j.logger.org.hibernate.SQL=DEBUG, CONSOLE_APPENDER  
log4j.additivity.org.hibernate.SQL=false 

log4j.appender.CONSOLE_APPENDER=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE_APPENDER.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE_APPENDER.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

感谢limc,我用just DEBUG和CONSOLE_APPENDER进行了尝试,似乎得到了相同的结果。我找不到太多关于CONSOLE_APPENDER选项的功能,您介意详细说明吗?CONSOLE_APPENDER基本上只是我使用的一些APPENDER名称。名称并不重要,只要您使用它来引用现有的appender。。。请参阅@ryan上的
配置
部分:顺便说一下,如果这个log4j对您不起作用,您仍然可以通过设置
hibernate来吐出SQL。将\u SQL
属性显示为
true
。。。看这个:。。。我只是想给你另一个选择。