我可以将值从maven注入persistence.xml文件吗?

san*_*zky 8 persistence.xml maven

我希望能够将我的数据库信息存储在pom.xml中(作为属性),并将必要的值注入我的persistence.xml文件中.有什么方法可以在maven中实现这个目标吗?

另一种方法是如何将我的数据库连接信息保存在一个文件中,并能够将它提供给我的pom.xml和我的persistence.xml

khm*_*ise 12

您可以将persistence.xml定位到src/main/resources/PATH之类的位置,并使用过滤选项过滤persistence.xml并放入正确的位置.这可以通过激活以下资源中的过滤来实现:

<resource>
  <directory>src/main/resources/PATH</directory>
  <filtering>true</filtering>
</resource>
Run Code Online (Sandbox Code Playgroud)

您的测试资源也是如此:

<testResources>
  <testResource>
    <directory>src/main/resources/PATH</directory>
    <filtering>true</filtering>
  </testResource>
</testResources>
Run Code Online (Sandbox Code Playgroud)

基于以上所述,您可以在persistence.xml中提供类似的内容

   <hibernate.url>${database.url}</hibernate.url>
Run Code Online (Sandbox Code Playgroud)

你需要检查的是persistence.xml文件的正确目标位置(我记得像META-INF/..?如果是的话,它将它放入src/main/resources/META-INF并相应地更改过滤器目录.