2008-12-09 4 views
1

Après avoir installé Hibernate Tools dans Eclipse, comment puis-je voir la requête SQL générée dans le langage de requête JPA? (J'utilise Hibernate comme mon implémentation JPA)Comment voir une requête SQL en utilisant Hibernate Tools dans Eclipse?

Ma classe Java DAO ressemble à quelque chose comme:

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(); 
} 

Je veux voir ce que la requête SQL correspondant sera. J'ai entendu dire que Hibernate Tools a une sorte de support pour cela.

Répondre

4

Afin de voir la requête SQL, vous pouvez simplement configurer hibernate.show_sql = true dans votre fichier hibernate.cfg.xml. Ensuite, vous devriez voir les requêtes dans la fenêtre de la console lors de l'exécution de l'application. C'est la fonctionnalité de l'exécution d'hibernate, quand Tools vous fournit l'éditeur HQL, ainsi vous pouvez tester les requêtes avant de les mettre dans le code.

3

Outils Hibernate supportent cela:

1) Utilisez l'éditeur HQL (vous pouvez obtenir la requête là automatiquement en plaçant le curseur sur la requête, puis appuyez sur Ctrl + 1, puis il y a une option pour Ouvrir dans l'éditeur HQL).

2) Assurez-vous que la vue Preview SQL dynamique est ouverte/visible, puis elle affichera le code SQL que Hibernate va générer à partir de votre HQL.

3) Fait;)

Questions connexes