2
我一直在使用Hibernate非常成功,但今天我注意到一个奇怪的现象与日志记录。如果我打开org.hibernate
(例如org.hibernate.SQL
或org.hibernate.impl.SessionImpl
)下的类的日志记录(处于“调试”级别),我会获得与这些类相对应的每个日志行两次。我从来没有看到与记录任何其他包。双重登录休眠
下面是日志输出摘录。第一和第四行是我的,其他都是Hibernate的:(!幸运)从数据库侧
23:54:45,472 TRACE UserDaoImpl:37 - Loading User by id: 2
23:54:45,473 DEBUG SQL:401 - select user0_.id as id22_2_, user0_.avatar as avatar22_2_, ...
23:54:45,473 DEBUG SQL:401 - select user0_.id as id22_2_, user0_.avatar as avatar22_2_, ...
23:54:45,499 TRACE PropertyDaoImpl:40 - Loading class com.myapp.locale.Region with ID 21
23:54:45,503 DEBUG SQL:401 - select region0_.id as id19_1_, region0_.code as code19_1_, ...
23:54:45,503 DEBUG SQL:401 - select region0_.id as id19_1_, region0_.code as code19_1_, ...
证据表明命令只发送一次每个。
我使用Hibernate的注解3.3.1.GA
与PostgreSQL的JDBC连接器5.0.7
和log4j的1.2.14
我的log4j.properties包含2行关于Hibernate:一个设置org.hibernate为“警告”,另一个设置org.hibernate.SQL为“调试”。评论其中的第一个解决了这个问题。谢谢,考恩! (我现在读关于“可加性”...) – pierdeux 2009-01-11 19:50:51