从现有数据库生成 JPA 2 实体
2022-09-01 04:32:20
尝试使用 OPENJPA 反向映射工具。它们提供了更多的设施,并且易于配置。此示例将澄清。
如果您使用 maven 作为构建工具,请将此条目添加到您的 pom.xml
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<configuration>
<mainClass>org.apache.openjpa.jdbc.meta.ReverseMappingTool</mainClass>
<commandlineArgs>
-directory src/main/java -accessType fields
-useGenericCollections true -package org.yourproject.model
-metadata none -annotations true
-innerIdentityClasses false -useBuiltinIdentityClass false
-primaryKeyOnJoin false
</commandlineArgs>
<includePluginDependencies>true</includePluginDependencies>
</configuration>
<dependencies>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.CR3</version>
</dependency>
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa-all</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
</plugin>
还要在持久性中添加以下属性.xml该属性位于资源的 META-INF 文件夹中。openjpa 工具将利用这些功能来建立与数据库的连接。
<properties>
<property name="openjpa.ConnectionUserName" value="${db.username}"/>
<property name="openjpa.ConnectionPassword" value="${db.password}"/>
<property name="openjpa.ConnectionURL" value="${db.url}"/>
<property name="openjpa.ConnectionDriverName" value="${db.driver.class}"/>
</properties>
要生成实体文件,只需使用 mvn org.codehaus.mojo:exec-maven-plugin:java 在项目目录中启动 maven 目标,它将在所需位置生成文件。