2

我想将 HQL 查询转换为纯 Oracle 查询?

有没有这方面的翻译。

前任 :

来自 Table1 --> Table1 是 Table 的实体类

将其转换为

从表中选择 *

预先感谢。

4

3 回答 3

4

您可以简单地在 Hibernate 中打开 SQL 日志记录并查看它生成的查询。具体来说,设置此属性:

hibernate.show_sql=true

编辑:如果根据您启动服务器的方式,您无法使用标准输出,那么您需要更改休眠日志配置以打印 SQL 调试日志。将此行添加到您的 log4j 属性文件中。

log4j.logger.org.hibernate.SQL=DEBUG
于 2012-08-03T12:05:02.703 回答
3

您还可以使用各种记录器。

<!-- Log all SQL DML statements as they are executed -->
<logger name="org.hibernate.SQL" level="debug" />
<!-- Log all  JDBC parameters -->
<logger name="org.hibernate.type" level="debug" />
<!-- Log all  second level cache activity -->
<logger name="org.hibernate.cache" level="debug" />
<!-- Log all  transaction related activity -->
<logger name="org.hibernate.transaction" level="debug" />
<!-- Log everything -->
<logger name="org.hibernate" level="debug" />
于 2012-08-03T12:08:47.673 回答
0

正如其他人评论的那样,hibernate.show_sqlhibernate 的属性允许记录 Hibernate 执行的 SQL 查询。

对于交互式查询, EclipseIntelliJ IDEA都有 Hibernate 控制台插件,可让您输入 HQL 查询并执行它们。

请注意,这是一种有用的技术,可用于了解您是否需要执行 HQL 查询优化(即,您想查看您的 HQL 查询是否正在使用适当的索引运行)。

于 2012-08-03T21:01:03.763 回答