这是我的问题..。
我来自JBoss5,我可以在给定的persistence.xml上设置hibernate属性(hibernate.show_sql, hibernate.format_sql, hibernate.use_sql_comments, ...
)的值,使用JBoss属性语法并将这些值配置为系统属性……
对于那些想知道什么是"JBoss属性语法“的人来说,”ANT属性语法“是一种非常类似于ANT属性的语法...示例:
value ="${propKey:defaultValue}“(defaultValue为文字值,可选)
因此,在我的persistence.xml文件中,我有如下内容:
<properties>
...
<property name="hibernate.show_sql" value="${xxx.hibernate.show_sql:false}" />
</properties>
这样,如果我想打开该属性,我只需要定义一个系统属性xxx.hibernate.show_sql=true并启动服务器...
此架构在wildfly9中不起作用...
在搜索SO (similar question)并检查Wildfly standalone.xml之后,我证明在widfly9上仍然可以使用此功能...但是,对于persistence.xml,我不能定义默认值...
如果我将属性值定义为:${xxx.hibernate.show_sql}
,则它可以工作;否则,它不能。
那么,如何定义默认值呢??
谢谢!
发布于 2015-12-05 00:49:33
最简单的选择是使用org.hibernate.SQL
日志类别。您可以在服务器运行时对其进行动态配置。
CLI示例:
/subsystem=logging/logger=org.hibernate.SQL:add(level=DEBUG)
如果希望在控制台上看到它,还需要确保控制台处理程序被设置为允许调试消息。
/subsystem=logging/console-handler=CONSOLE:write-attribute(name=level, value=DEBUG)
https://stackoverflow.com/questions/34075467
复制