我们现在做一个项目,以快完工了,语句都是使用HQL的,但现在需要把所执行的HQL语句转化成SQL语句存放到数据库中,当项目运行一个方法,都会把相应SQL取出来,存入库,以便后期在数据库中执行相应操作,这应该怎么去实现
解决方案 »
- 关于struts2 package之间跳转问题
- ibatis 的insert()方法如何返回插入后影响到的记录数,而不是对象?
- 选择Rest还是Soap?
- 请教List和下拉框关联问题
- 关于ChartDirector的信息提示的问题
- 高手指导下(急)这段代码的语句的意思
- Struts 、谁会啊
- javamail的两个问题:1.收邮件时,如何取得附件大小;2.有关目录
- 当表但的action指向他本身时,下面的错在那里?
- 配置SpringMVC报错Could not initialize class org.hibernate.cfg.AnnotationConfiguratio
- 实施工程师怎么样?
- 关于解析XML报错的一个问题
这样hibernate会将sql语句显示出来,
最彻底的做法就下载hibernate的源码,修改相应的代码,将VO的值取出,拼出SQL语句放入数据库。
这样的SQL是可执行的!
你改一改源码存到数据库里不就行了
这样hibernate会将sql语句显示出来
在hibernate.cfg.xml中将show_sql设置为true,
这样hibernate会将sql语句显示出来,再设置一下log4j把hibernate生成的sql写入日志文件
在hibernate.cfg.xml中将show_sql设置为true,
这个也可以啊1~只是没有参数!~但是这个是嘴标准的sql语句!~
如果需要使用sql语句
应该只能一句句的改吧
改好象也不是很麻烦
如下拦截器需要重新实现。
public interface Interceptor {
/**
* Called when sql string is being prepared.
* @param sql sql to be prepared
* @return original or modified sql
*/
public String onPrepareStatement(String sql);
}
将Hibernate内部拦截器内部实现置换掉。比较麻烦,没那么容易成功。
在hibernate.cfg.xml中将show_sql设置为true,
这样hibernate会将sql语句显示出来,再设置一下log4j把hibernate生成的sql写入日志文件 你試試這樣看行不