Sök…


Anmärkningar

Logga in dessa frågor är långsamma , ännu långsammare än Viloläge vanligtvis är. Det använder också en enorm mängd timmer. Använd inte inloggningsscenarier där prestanda krävs. Använd detta bara när du testar de frågor som Hibernate faktiskt genererar.

Använda en loggningskonfigurationsfil

Ställ in loggningen av följande paket i de loggkonfigurationsfiler du väljer:

# log the sql statement
org.hibernate.SQL=DEBUG
# log the parameters
org.hibernate.type=TRACE

Det kommer förmodligen att finnas vissa logger-specifika prefix som krävs.

Log4j config:

log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=TRACE

Spring Boot application.properties :

logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type=TRACE

Logback logback.xml :

<logger name="org.hibernate.SQL" level="DEBUG"/>
<logger name="org.hibernate.type" level="TRACE"/>

Använda vilolägeegenskaper

Detta visar dig den genererade SQL, men kommer inte att visa dig de värden som finns i frågorna.

<bean id="sessionFactory"
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="hibernateProperties">
        <props>
            <!-- show the sql without the parameters -->
            <prop key="hibernate.show_sql">true</prop>
            <!-- format the sql nice -->
            <prop key="hibernate.format_sql">true</prop>
            <!-- show the hql as comment -->
            <prop key="use_sql_comments">true</prop>
        </props>
    </property>
</bean>

Aktivera / inaktivera SQL-inloggningsfelsökning

Vissa applikationer som använder Viloläge genererar en enorm mängd SQL när applikationen startas. Ibland är det bättre att aktivera / inaktivera SQL-loggen i specifika punkter när du felsöker.

För att aktivera, bara köra den här koden i din IDE när du felsöker tillämpningen:

org.apache.log4j.Logger.getLogger("org.hibernate.SQL")
    .setLevel(org.apache.log4j.Level.DEBUG)

Att inaktivera:

org.apache.log4j.Logger.getLogger("org.hibernate.SQL")
    .setLevel(org.apache.log4j.Level.OFF)


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow