在控制檯中顯示Hibernate打印的SQL中的參數

默認情況下,hibernate的sql中都是以問號代表參數,並沒有顯示參數的真實值,但是也不是做不到,只需要兩步配置就可以顯示出參數的真實值了:

1.spring的配置文件中增加:

<prop key="hibernate.show_sql">true</prop>

或者在hibernate的配置文件中增加:
<property name="show_sql">true</property>

2.在log4j.properties中做如下配置:

log4j.appender.STDOUT.Threshold=trace
log4j.category.org.hibernate.SQL=trace
log4j.category.org.hibernate.type=trace

控制檯顯示如下:

Hibernate: insert into app_log (time, usr, ip, level, log) values (?, ?, ?, ?, ?)
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '2010-11-29 14:36:48' to parameter: 1
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '1' to parameter: 2
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding '127.0.0.1' to parameter: 3
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding 'info' to parameter: 4
log4j:org.hibernate.type.NullableType.nullSafeSet(NullableType.java:133)# - binding 'admin login ' to parameter: 5

轉自:http://joeblow.iteye.com/blog/828218
發佈了13 篇原創文章 · 獲贊 3 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章