Как просмотреть SQL-запрос с помощью Hibernate Tools в Eclipse? - PullRequest
1 голос
/ 09 декабря 2008

Установив Hibernate Tools в Eclipse, как я могу просмотреть сгенерированный запрос SQL на языке запросов JPA? (Я использую 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 ]

4 голосов
/ 09 декабря 2008

Чтобы увидеть запрос SQL, вы можете просто настроить hibernate.show_sql = true в своем файле hibernate.cfg.xml. Затем вы должны увидеть запросы в окне консоли во время выполнения приложения.

Это особенность режима гибернации, когда Инструменты предоставляют вам HQL-редактор, поэтому вы можете тестировать запросы, прежде чем вставлять их в код.

3 голосов
/ 19 августа 2009

Инструменты Hibernate действительно поддерживают это:

1) Используйте редактор HQL (вы можете автоматически ввести запрос в него, поместив курсор на запрос и нажав Ctrl + 1, а затем есть возможность открыть в редакторе HQL).

2) Убедитесь, что у вас есть представление «Динамический предварительный просмотр SQL», открытое / видимое, и оно покажет, что SQL Hibernate будет генерироваться из вашего HQL.

3) Готово;)

...