如何在Eclipse中使用Hibernate Tools查看SQL查询?

时间:2008-12-09 03:08:32

标签: eclipse hibernate jpa hibernate-tools

在Eclipse中安装了Hibernate Tools,如何从JPA查询语言中查看将要生成的SQL查询? (我正在使用Hibernate作为我的JPA实现)

我的Java DAO类看起来像:

public List<Person> findById(int id)
{
    return entityManager.find(Person.class, id);
}
public List<Person> find(String name)
{
    Query q = entityManager.createQuery("SELECT p FROM Person p WHERE name=?");
    q.setParameter(1, name);
    return q.getResultList();
}

我想看看相应的SQL查询是什么。我听说Hibernate Tools对此有一些支持。

2 个答案:

答案 0 :(得分:4)

为了查看SQL查询,您只需在hibernate.cfg.xml文件中配置hibernate.show_sql = true即可。然后,您应该在应用程序执行期间在控制台窗口中看到查询。

这是hibernate运行时的功能,当Tools为您提供HQL编辑器时,您可以在将查询放入代码之前对其进行测试。

答案 1 :(得分:3)

Hibernate Tools确实支持:

1)使用HQL编辑器(您可以通过将光标放在查询上并按Ctrl + 1自动获取查询,然后在HQL编辑器中打开一个选项)。

2)确保您打开/可见动态SQL预览视图然后它将显示SQL Hibernate将从您的HQL生成。

3)完成;)