如何使Hibernate在控制台中打印ID?
问题描述:
我正在使用Hibernate/Spring。我有Hibernate配置为输出HQL到控制台;它显示诸如:如何使Hibernate在控制台中打印ID?
Hibernate: update sometable set some_field=?, other_field=? where id=?
这很好。我想要的唯一附加事项是用REAL ID替换问号。
上下文是,我试图调查是否在该记录的父/所有者发生更改(例如,从P1到P2)之后,级联删除是否负责删除记录,然后删除旧父级P1 。
答
您需要启用这个包(log4j的)记录,在这个级别:
org.hibernate.sql=TRACE
org.hibernate.type=TRACE
应该产生跟踪各参数的消息。
@see thierd replaiy为例
加入
只有一个提示:
:因为如果显示/记录到不同的地方的陈述和参数将是无用除了使用“hibernate.show_sql”,您可以为“org.hibernate.SQL”启用DEBUG日志记录。现在您应该看到Log4J输出中记录的SQL而不是控制台中。
我不确定我明白你的意思。这些额外的属性放在hibernateProperties中,还是你在谈论log4j日志? – ashes999 2011-01-27 17:34:21