2015-01-16 120 views
1

我知道我們可以隱藏hibernate.cfg.xmlpersistence.xml與下面的代碼/顯示SQL查詢:顯示/隱藏SQL查詢

<property name="show_sql">true</property> 

但沒有任何辦法從JBoss的配置文件做的一樣嗎?

+1

您應該配置自己的記錄吧。如果這是log4j,請看看:http://stackoverflow.com/a/436687/2102532 – meskobalazs

回答

0

您可以啓用或禁用以下類別的日誌記錄(使用一個log4j.properties這裏提交):

log4j.properties

log4j.logger.org.hibernate=INFO, hb 
log4j.logger.org.hibernate.SQL=DEBUG 
log4j.logger.org.hibernate.type=TRACE 
log4j.logger.org.hibernate.hql.ast.AST=info 
log4j.logger.org.hibernate.tool.hbm2ddl=warn 
log4j.logger.org.hibernate.hql=debug 
log4j.logger.org.hibernate.cache=info 
log4j.logger.org.hibernate.jdbc=debug 

log4j.appender.hb=org.apache.log4j.ConsoleAppender 
log4j.appender.hb.layout=org.apache.log4j.PatternLayout 
log4j.appender.hb.layout.ConversionPattern=HibernateLog --> %d{HH:mm:ss} %-5p %c - %m%n 
log4j.appender.hb.Threshold=TRACE 

的hibernate.cfg.xml

<property name="show_sql">true</property> 
<property name="format_sql">true</property> 
<property name="use_sql_comments">true</property> 
+0

其實我不想使用log4j,有沒有其他方法可以做到這一點。 – Sagar

+1

如果這些類別'org.hibernate.xxx'有效,您可以將它們添加到日誌子系統。 '/subsystem=logging/logger=org.hibernate:add(級別= INFO)'。 –

2

在Jboss EAP 6.2中。

需要通過改變standalone.xml

<system-properties> 
    <property name="org.jboss.as.logging.per-deployment" value="false"/> 
</system-properties> 

或者設置環境變量,你可以把它作爲一個JVM選項。

$ standalone.sh -Dorg.jboss.as.logging.per-deployment=false 

然後在standalone.xml添加以下下<subsystem xmlns="urn:jboss:domain:logging:1.3">元素

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

添加這些到hibernate.cfg.xml

<property name="show_sql">true</property> 
<property name="format_sql">true</property> 
<property name="use_sql_comments">true</property>