Jpa persistence.xml变量声明

Jpa persistence.xml变量声明,jpa,glassfish-3,persistence.xml,Jpa,Glassfish 3,Persistence.xml,我是JPA的新手,在我的项目中,应用服务器是Glassfish 3.1.2 因此,当我在项目中遇到persistence.xml时,我已经了解了如何在JavaSE和JavaEE中使用它的基本概念。 但是,我遇到了一些通过${}配置的属性 <jta-data-source>${dataSource}</jta-data-source> <property name="javax.persistence.jdbc.user" value="${testDBUser}

我是JPA的新手,在我的项目中,应用服务器是Glassfish 3.1.2 因此,当我在项目中遇到persistence.xml时,我已经了解了如何在JavaSE和JavaEE中使用它的基本概念。 但是,我遇到了一些通过${}配置的属性

<jta-data-source>${dataSource}</jta-data-source>  
<property name="javax.persistence.jdbc.user" value="${testDBUser}" />
${dataSource}
所以我不知道这些变量(dataSource、testDBUser..等等)是在哪里定义的。所以我经历了这一切 和 . 我知道这些是系统变量和环境变量/初始上下文变量

然而,我不知道它们是在哪里配置/声明的,我在整个项目中搜索了这些变量,但运气不好

这些变量是否在应用程序服务器启动期间配置/是否在应用程序服务器的任何*.xml中声明


您能简要说明这些文件是在哪里声明的吗?

通常在.properties文件中声明。主要是,它可以像数据库一样命名。属性。但这还不足以让它发挥作用。你需要以某种方式绘制它。因此,Spring扮演了一个角色,并提供了一种很好的方法:使用
PropertyPlaceHolderConfigure
,语法如下:

    <property name="location">
        <value>HERE DECLARE YOUR PROPERTY FILE</value>
        <value>HERE DECLARE YOUR PROPERTY FILE</value>
                      ...
    </property>


在这里申报您的财产档案
在这里申报您的财产档案
...


但是最好的方法是在服务器中声明它。xml:)

谢谢您的回复。我的项目中没有使用Spring。EJB、JPA和Glassfish Web服务器。我检查了整个项目(也包括.properties文件),但没有发现变量。但是,您能说出什么是server.xml吗?您的意思是在application server中使用application.xml?请尝试查找project是否具有ResourceLink,同时尝试以下操作: