1

我已经在OpenShift上创建了Spring快速启动应用程序,它工作正常,显示了一个用于用户注册的网页,但它在重新启动后不记得新成员。我在想,那是因为我没有真正的数据库。所以我添加了一个postgresql-9.2墨盒。所以我的问题是如何准确地将postgresql配置到OpenSift Spring应用程序中,以便这个Web服务器可以存储重启后仍然存在的数据。

第一个问题

我在 Eclipse 中创建了 OpenShift 项目,但pom.xml没有postgresql项目。也就是说,我在 Maven 依赖项中看不到postgresql依赖项。我相信在我创建的其他应用程序(例如JBoss EAP 6 )中,如果我添加盒式磁带,我可以找到 Maven 依赖项。将postgresql添加到项目中的正确方法是什么?

第二个问题

有一个 README.md 文件说

编辑src/main/resources/META-INF/persistence.xml以使用适当的数据源(java:jboss/datasources/MysqlDS 或 java:jboss/datasources/PostgreSQLDS):

<jta-data-source>java:jboss/datasources/MysqlDS</jta-data-source>

所以我做了。但我认为这个 README 缺少一些东西。我构建了项目,发现jboss-deployment-structure.xml有错误。内容是

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
   <deployment>
       <dependencies>
            <module name="com.h2database.h2"/>
            <module name="org.codehaus.jackson.jackson-core-asl"/>
            <module name="org.codehaus.jackson.jackson-mapper-asl"/>
            <module name="org.slf4j"/>
       </dependencies>
   </deployment>
</jboss-deployment-structure>

我在想问题是数据库 h2 现在已从 中删除persistence.xml,但我不知道如何在此处添加相应的 postgresql 模块。我是 Spring/OpenShift/Postgresql 的新手,所以有人可以帮我解决这个问题吗?

4

1 回答 1

1

第一个问题: 对于 spring-quick-start 应用程序,您不需要为 Postgresql 或 Mysql 获取 Maven 依赖项。您只需要按照自述文件更改persistence.xml。

第二个问题: 如果你不本地构建,甚至不需要将1.0更改为2.0。Openshift 将接受这一点。

于 2013-11-13T02:40:12.087 回答