Maison >base de données >tutoriel mysql >Comment enregistrer des requêtes SQL détaillées avec des valeurs de paramètres dans Hibernate ?
Lors de l'utilisation d'Hibernate, il est souvent utile de visualiser les requêtes SQL exécutées, notamment lors du débogage ou de l'optimisation des performances. Cependant, par défaut, Hibernate enregistre les instructions SQL en utilisant des espaces réservés (points d'interrogation) au lieu des valeurs réelles des paramètres de requête.
Si vous devez imprimer des requêtes contenant des valeurs réelles, vous pouvez configurer les catégories de journalisation suivantes :
Par exemple, en utilisant la configuration log4j :
<code># 记录SQL语句 log4j.logger.org.hibernate.SQL=debug # 记录传递给查询的JDBC参数 log4j.logger.org.hibernate.type=trace </code>
Le premier paramètre (org.hibernate.SQL) équivaut à définir la propriété héritée hibernate.show_sql=true. Le deuxième paramètre (org.hibernate.type) imprime les paramètres de liaison et d'autres informations.
Une autre façon d'imprimer des requêtes contenant des valeurs réelles consiste à utiliser un pilote proxy JDBC tel que P6Spy. Ce pilote intercepte toutes les instructions SQL et enregistre les informations avec des informations détaillées, y compris les valeurs réelles des paramètres de requête.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!