我有如下示例查询
String hql = "from Stock s where s.stockCode = :stockCode";
List result = session.createQuery(hql)
.setParameter("stockCode", "7277")
.list();
结果是一个我期望的列表,但我想知道如何在执行查询之前在tomcat日志中sysout sql查询。我是否可以在代码级别执行此操作,而不是在log4j或hibernate config中设置属性?
在本例中,我要查找的输出如下
select * from Stock s where s.code = 123;
1条答案
按热度按时间p1tboqfb1#
要在代码级别访问sql,可以将datasource代理库与侦听器一起使用。
您可以在我的github repo jpa拼图中找到数据源代理及其侦听器的示例。
但是,如果您只想看到带有绑定参数的sql-s(
show-sql
仅显示不带绑定参数的sql-s),使用hibernate配置更容易: