Hibernate SQL auf Konsole anzeigen - showsql, formatsql und usesqlcomments

Zeigen Sie Hibernate SQL für die Konsole an - show_sql, format_sql und use_sql_comments

Hibernate verfügt über eine integrierte Funktion, mit der alle generierten SQL-Anweisungen in der Konsole protokolliert werden können. Sie können es aktivieren, indem Sie in der Hibernate-Konfigurationsdatei „hibernate.cfg.xml“ eine Eigenschaft „show_sql“ hinzufügen. Diese Funktion ist gut für die grundlegende Fehlerbehebung und um zu sehen, was der Ruhezustand bewirkt.

1. show_sql

Aktivieren Sie die Protokollierung aller generierten SQL-Anweisungen in der Konsole


true

Ausgabe

Hibernate: insert into example.stock_transaction
(CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME)
values (?, ?, ?, ?, ?, ?)

2. format_sql

Formatieren Sie die generierte SQL-Anweisung so, dass sie besser lesbar ist, aber mehr Platz auf dem Bildschirm beansprucht. :)


true

Ausgabe

Hibernate:
    insert
    into
        example.stock_transaction
        (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME)
    values
        (?, ?, ?, ?, ?, ?)

3. use_sql_comments

Hibernate fügt Kommentare in alle generierten SQL-Anweisungen ein, um darauf hinzuweisen, was das generierte SQL zu tun versucht


true

Ausgabe

Hibernate:
    /* insert com.example.common.StockTransaction
        */ insert
        into
            example.stock_transaction
            (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME)
        values
            (?, ?, ?, ?, ?, ?)

Ruhezustand-Konfigurationsdatei

Vollständiges Beispiel für „hibernate.cfg.xml“.




    
        false
        com.mysql.jdbc.Driver
        password
        jdbc:mysql://localhost:3306/example
        root
        org.hibernate.dialect.MySQLDialect
        true
        true
        true
    

Wie wäre es mit einem Hibernate SQL-Parameterwert?

Diese grundlegende SQL-Protokollierung ist für das normale Debugging ausreichend, kann jedoch den Wert des Hibernate-SQL-Parameters nicht anzeigen. Einige Bibliotheksintegrationen von Drittanbietern sind erforderlich, um den Hibernate SQL-Parameterwert für die Konsole oder Datei anzuzeigen. Überprüfen Sie die folgenden zwei Artikel: