我一直在努力学习如何连接到使用glassfish4开箱即用的嵌入式数据库Apache Derby。我必须在项目的src / META-INF / persistence.xml中设置什么?它是以某种方式预先配置的吗?如果没有,我如何更改其设置 - 通过glassfish控制台?
提前感谢您的帮助。
答案 0 :(得分:2)
您需要编辑persistence.xml以在IDE中添加持久性提供程序,要管理的类以及数据库的某些配置(如果您不使用JTA),并将其与应用程序打包在一起。您通常可以在persistence.xml中输入以下内容:
<persistence-unit name="call_it_as_you_want" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>YourClass</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver" />
<property name="javax.persistence.jdbc.url" value="jdbc:derby://127.0.0.1:1527/yourDatabase;create=true" />
<property name="javax.persistence.jdbc.user" value="your_database_login" />
<property name="javax.persistence.jdbc.password" value="your_database_password" />
<property name="eclipselink.ddl-generation" value="drop-and-create-tables" />
</properties>
</persistence-unit>
在此之前,检查derby是否在端口1527上运行 - 我认为应该这样做。如果您要将JPA与EJB一起使用,则可以使用JTA配置 - 在这种情况下,persistence.xml只需要声明您将从Glassfish的管理控制台创建的池。