Hibernate 显示 SQL 语句中 ? 的值

 Hibernate 显示 SQL 语句中 ? 的值

来源:http://www.blogjava.net/haha1903/archive/2007/07/18/130999.html
1、比较方便的办法
在 log4j 的配置中加上

 <logger name="org.hibernate.type" additivity="false">
  <level value="debug" />
  <appender-ref ref="CONSOLE" />
  <appender-ref ref="FILE" />
 </logger>
 <logger name="org.hibernate.sql" additivity="false">
  <level value="debug" />
  <appender-ref ref="CONSOLE" />
  <appender-ref ref="FILE" />
 </logger>
其中 org.hibernate.sql 不知道有什么用。

2、使用 p6spy 来显示 sql,配合 sqlprofile 比较方便,还可以使用 irontracksql。

sqlprofile 和 irontracksql 在得到 sql 的机制有些差别。

sqlprofile 是通过配置 log4j 的 socket append ,将 log 输出到 sqlprofile 的监听端口去。这样在调试程序的时候,只要先启动好 sqlprofile,就能得到 sql 了。

irontracksql 是在应用中监听一个端口,随应用启动,irontracksql 启动是连接到那个端口去得到 sql,所以要先启动用户,再让 irontracksql 连过去。

猜测:irontracksql 性能会好一些,而且不想看 sql 可以断下来。sqlprofile 则不行。但在调试程序的时候 sqlprofile 明显方便很多。

 

 

感受:

第一种方法没用过,不知道怎么用?作者的文档也写得不清楚。

 

第二种方法用过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值