在代码中如何获取hibernate的SQL语句

上善_若水 2008-02-25 08:29:43
在Struts+Spring+Hibernate框架代码中如何获取hibernate底层的SQL语句?业务需要!
...全文
2750 47 打赏 收藏 转发到动态 举报
写回复
用AI写文章
47 条回复
切换为时间正序
请发表友善的回复…
发表回复
Emily_1015 2012-03-04
  • 打赏
  • 举报
回复
搭建日志文件并配置显示ddl语句
sonald 2010-03-22
  • 打赏
  • 举报
回复
原来已经结贴了

但是我还是贴一个地址出来 有兴趣的朋友可以看一下


获得hibernate的sql语句

http://www.webasp.net/article/22/21872_print.htm
love_donet1 2010-01-05
  • 打赏
  • 举报
回复
关注中....
JavaAlpha 2009-08-20
  • 打赏
  • 举报
回复
兄弟解决了 吗???可以告诉你怎么解决的吗????
JavaAlpha 2009-08-13
  • 打赏
  • 举报
回复
遇到和楼主相同问题 关注
newfys 2008-06-13
  • 打赏
  • 举报
回复
恩。学习了。
kingsam_cds 2008-03-05
  • 打赏
  • 举报
回复
路过学习一下
上善_若水 2008-02-26
  • 打赏
  • 举报
回复
好的,我加了,c2one 加我MSN:hundsunlin@hotmail.com
睿音 2008-02-26
  • 打赏
  • 举报
回复
to:tolys
看到帖子加我msn:zhanglei.msn@hotmail.com。今天比较晕忙,咱们用msn联系。
上善_若水 2008-02-26
  • 打赏
  • 举报
回复
to : pizzame

异常解决了没有,我现在需要写在日志文件里!
rakuu 2008-02-25
  • 打赏
  • 举报
回复
学习下
睿音 2008-02-25
  • 打赏
  • 举报
回复
OK.感谢~~·
c2one 2008-02-25
  • 打赏
  • 举报
回复
要checkout的,到
http://sourceforge.net/projects/jdbmonitor
c2one 2008-02-25
  • 打赏
  • 举报
回复
里面有个binjar-src-doca.zip,里面就有发布包
睿音 2008-02-25
  • 打赏
  • 举报
回复
早期的时候就接触过。当时cownew的首页还是灰不XX(哦~~~)。
c2one:SVN里面为什么是空的??
睿音 2008-02-25
  • 打赏
  • 举报
回复
呃~~项目是空的?
c2one 2008-02-25
  • 打赏
  • 举报
回复
哈哈,cownew还是名气不小啊~`
睿音 2008-02-25
  • 打赏
  • 举报
回复
原来是cownew的东东。
checkout下。先顶,再学习。
zhumin726 2008-02-25
  • 打赏
  • 举报
回复
估计应该在配数据螈时有个showSql...之类的属性,设为true,在控制台就能看见
c2one 2008-02-25
  • 打赏
  • 举报
回复
这是个我所在团队CowNew的产品,
http://gforge.osdn.net.cn/projects/jdbmonitor/

下面转自http://hi.baidu.com/jingleq/blog/item/01fba8cdeba442500fb34554.html
JDBMonitor之我感2006年05月25日 星期四 01:09 A.M.  
JDBMonitor是一个开源项目,如果说JDBMonitor是一种很好的应用包,还不如说是一种很好的设计思路。

  惯例,先引用一下官方的说明:JDBMonitor是一个开源项目。使用它开发者可以很轻松为系统增加数据库执行日志功能。它使用十分方便,您所需要做的唯一事情就是在您系统的JDBC连接字符串前增加类似于 "listenerconfig=/config.xml:url=" 的字符即可,不用写任何代码。

  使用 JDBMonitor,您可以把数据库执行情况记录通过各种方式记录下来,比如打印到控制台、输出到文件或者通过socket传送给远程客户端。JDBMonitor是可扩展的,您可以扩展它来将执行情况通过其他方式记录下来,您所需要做的就是写一个实现IDBListener接口的类即可。

我的理解:

  JDBMonitor关注于数据库执行日志记录,现在的版本核心功能还比较单一,但是整个架构体现得比较完整。在以后的开发中,如果加入数据挖掘方面的信息,或许会成为一个非常成功的开源项目。(本人对数据挖掘认识比较少,对这方面不作过多的评论)无入侵式的设计我非常佩服,很巧妙地把所要实现的功能和系统代码分离得很出色。代码清楚易懂,适合在代码中吸取其思想。

使用经验:

  由于JDBMonitor的无入侵式,所以配置起来非常简单。在我第一次尝试的时候,我就把JDBMonitor加入到我写的一套系统中,按照JDBMonitor源码包上的用户手册,我配置一次成功。在我那个系统中,对于数据库的操作使用struts提供的数据源配置方法配置(即配置struts-config.xml),我对原来的代码作了如下修改:

<data-source type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="password" value="123456" />
<set-property property="username" value="information" />
<set-property property="driverClassName" value="com.cownew.JDBMonitor.jdbc.DBDriver" />
<set-property property="description" value="informationDB" />
<set-property property="url" value="listenerconfig=c:/log/jdbmonitor/config.xml:url=jdbc:mysql://localhost:3306/information" />
<set-property property="readOnly" value="false" />
<set-property property="autoCommit" value="false" />
</data-source>

  跟着给工程添加了jdbmonitor.jar包,之后建了c:/log/jbdmonitor/config.xml这个文件,该文件的内容为:

<config>
<Listeners>
<!--the arguments of FileDBListener is the file to log the SQL statement -->
<Listener class="com.cownew.JDBMonitor.listenerImpl.FileDBListener" arg="c:/log.txt"/>
<!--ConsoleDBListener no arguments-->
<Listener class="com.cownew.JDBMonitor.listenerImpl.ConsoleDBListener" arg=""/>
</Listeners>
<JdbcDrivers>
<JdbcDriver class="com.mysql.jdbc.Driver"/>
</JdbcDrivers>
</config>

  这样就完成所有配置了。我配置的listener的方式的控制台输出和文件输出。  关于监听器,我觉得现阶段该包附带的四个监听器已经足够了,单纯这个级别的数据库日志只能提供很有限的信息,开发的重点应该放在功能的加强和应用上。功能的加强,我一直都觉得必需向一个系统的其他层上面拓展,不应该局限于单纯的数据库操作层。比如web系统,对于访问web容器的ip的记录是很必要的,数据库的日志也应该以某种方式与web层的日志相融合。要以同样的无入侵式实现对web容器的监控也是一种考验。是否能借助于面向方面所带来的便利呢?值得讨论。

  花了很少的时间读了读源码,体会:核心,通过对基类java.sql.*的包装,在传递数据的同时,记录下所传递的数据。
加载更多回复(27)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧