小编典典

即使使用sql_show = true,Hibernate也不会显示sql语句

hibernate

我不确定为什么它不显示sql语句。我之前使用过它(在较早的春天,这次我使用3)

在ApplicationContext中,我有:

<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="myDataSource"/>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
            <prop key="hibernate.show_sql">true</prop>
        </props>
    </property>
    <property name="packagesToScan">
        <list>
            <value>my.model.*</value>
        </list>
    </property>
</bean>

在log4j中:

# Standrd System.out appender
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.Threshold=DEBUG
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# package override setting
log4j.logger.org.hibernate.SQL=DEBUG, stdout
log4j.additivity.org.hibernate.SQL=false
log4j.logger.org.displaytag=INFO

log4j.rootLogger=DEBUG, stdout

其他一切似乎都很好,但是它并没有显示sql。

我有想念吗?

(或者是否可以从org.hibernate.cfg.Environment.getProperties()的SessionFactory打印?它没有显示show_sql,可能甚至没有正确注入?)

请帮助提前谢谢!


阅读 406

收藏
2020-06-20

共1个答案

小编典典

确保DEBUG良好,在某一时刻,hibernate日志记录已从DEBUG更改为TRACE。另外,请确保您的帐户中没有门槛log4j.config。如果您还希望显示参数,则包括org.hibernate.type。您可能还需要设置org.hibernate.jdbc=TRACE或尝试org.hibernate=TRACE分析您的需求,然后将每个包装更改回适当的水平。

2020-06-20