我正在为我的项目使用JPA ......
我的问题是:Whenever we are executing some query using the JPA the query is logged in the server.log file of the **JBOSS** .
我正在使用Jboss log4J。
但我想避免在server.log文件中打印查询。 不改变以下属性:
<property name="hibernate.show_sql" value="true"/>
相反,我试过:
<category name="org.hibernate">
<priority value="ERROR" />
</category>
在log4j.xml
中,尽管查询正在登录控制台或server.log以进行成功查询。
任何人都可以帮我解决这个问题吗?
我必须更改配置以避免在server.log中记录查询?
答案 0 :(得分:1)
你可能很难做到这一点。
<property name="hibernate.show_sql" value="true"/>
实际上是一个开发设置,它将生成的SQL写入stdout而不是写入记录器。
看一下org.hibernate.jdbc.util.SQLStatementLogger
确认。
将SQL记录到已配置的日志记录机制是完全不同的事情,并写入org.hibernate.SQL
。
因此,为了避免在任何地方编写SQL,您需要设置:
<property name="hibernate.show_sql" value="false"/>
并使用以下日志设置:
<category name="org.hibernate">
<priority value="INFO" />
</category>