通过EclipseLink使用derby内置glassfish4

时间:2013-11-02 21:34:40

标签: java glassfish derby glassfish-4

我一直在努力学习如何连接到使用glassfish4开箱即用的嵌入式数据库Apache Derby。我必须在项目的src / META-INF / persistence.xml中设置什么?它是以某种方式预先配置的吗?如果没有,我如何更改其设置 - 通过glassfish控制台?

提前感谢您的帮助。

1 个答案:

答案 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的管理控制台创建的池。