我是JPA的新手,在我的项目中,applciation服务器是 Glassfish 3.1.2 因此,当我在项目中遇到persitence.xml时,我已经通过http://en.wikibooks.org/wiki/Java_Persistence/Runtime来了解如何在JavaSE和JavaEE中使用它。 但是我遇到了几个通过$ {}配置的属性。
<jta-data-source>${dataSource}</jta-data-source>
<property name="javax.persistence.jdbc.user" value="${testDBUser}" />
所以我很困惑这些变量(dataSource,testDBUser..etc)的定义。所以我经历过这个 http://tomee.apache.org/configuring-persistenceunits-in-tests.html和 http://forcedotcom.github.io/java-sdk/connection-url。 我知道这些是系统变量和环境变量/初始上下文变量。
但是我不知道他们在哪里配置/声明,我在整个项目中搜索了这些变量,但没有运气。
这些变量是否在应用程序服务器启动期间配置/是否在应用程序服务器的任何* .xml中声明。
请您详细说明这些声明的位置?
答案 0 :(得分:0)
通常在 .properties 文件中声明。主要是,它可以命名为数据库。属性 。但它还不足以使其发挥作用。你需要以某种方式映射它。所以,Spring扮演一个角色并提供了一个很好的方法:使用PropertyPlaceholderConfigurer
并且语法是这样的:
<property name="location">
<value>HERE DECLARE YOUR PROPERTY FILE</value>
<value>HERE DECLARE YOUR PROPERTY FILE</value>
...
</property>
但最好的方法是在server.xml中声明它:)