Maison >base de données >tutoriel mysql >Comment puis-je enregistrer des requêtes SQL avec des valeurs de paramètres dans Hibernate ?

Comment puis-je enregistrer des requêtes SQL avec des valeurs de paramètres dans Hibernate ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-22 22:36:14881parcourir

How Can I Log SQL Queries with Parameter Values in Hibernate?

Surveillance des requêtes et des paramètres SQL Hibernate

Le débogage des applications Hibernate nécessite souvent d'inspecter les requêtes SQL générées, y compris les valeurs de leurs paramètres. La journalisation Hibernate standard affiche uniquement des points d'interrogation fictifs au lieu des valeurs réelles. Cet article détaille comment révéler ces valeurs.

Exploiter la journalisation intégrée d'Hibernate

Hibernate propose deux catégories de journalisation pour une visualisation détaillée des requêtes :

  • org.hibernate.SQL (niveau de débogage) : Affiche toutes les instructions SQL Data Manipulation Language (DML) exécutées.
  • org.hibernate.type (niveau de trace) : Expose tous les paramètres JDBC utilisés dans chaque requête.

Activez cette fonctionnalité de journalisation en ajoutant ces lignes à votre log4j fichier de configuration :

<code># Displays SQL statements
log4j.logger.org.hibernate.SQL=debug

# Displays JDBC parameters
log4j.logger.org.hibernate.type=trace</code>

Alternative : utiliser un pilote proxy JDBC

Pour ceux qui préfèrent une alternative à la journalisation native d'Hibernate, un pilote proxy JDBC tel que P6Spy offre une solution robuste. Ce pilote intercepte et modifie les appels JDBC, fournissant une vue pré-exécution des requêtes pour une analyse complè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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn