Keine der beiden Antworten arbeitete für mich aus der Box. Nach ein wenig Recherche konnte ich POJOs aus einer Datenbank generieren. Hoffe, dass dieser schnell jemanden verfolgt.
Generieren Sie einfach die Java-Dateien - keine Mapping-Dateien generiert.
Definieren Sie Ihre Datenbankverbindung in src/test/resources/revng/hibernate.cfg.xml. Verwenden Sie den Testzweig, damit diese Dateien nicht in das verteilbare Artefakt kopiert werden.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="pmSessionFactory">
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<!-- Note that we are pointing directly at the catalog so we can use
unqualified table names -->
<property name="hibernate.connection.url">jdbc:oracle:thin:@server.domain.com:1521:catalog</property>
<property name="hibernate.connection.password">login</property>
<property name="hibernate.connection.username">****</property>
<property name="hibernate.default_schema">PM</property>
</session-factory>
</hibernate-configuration>
Erstellen Sie eine Liste von Tabellen, die Sie importieren möchten. Auch im Testzweig: src/test/resources/reveng/model.reveng.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering PUBLIC
"-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >
<hibernate-reverse-engineering>
<!-- This assumes your database connection is pointing to the proper catalog -->
<!-- To get all tables in the named schema, use the following
<schema-selection match-schema="PM" />
-->
<!-- to get only the named tables -->
<schema-selection match-schema="PM" match-table="PM_PROPERTY"/>
<schema-selection match-schema="PM" match-table="PM_APPLICATION"/>
<schema-selection match-schema="PM" match-table="PM_PROPERTY_TYPE"/>
</hibernate-reverse-engineering>
die Hibernate3 Maven Plugin Ihre pom hinzufügen
<build>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<components>
<component>
<name>hbm2java</name>
<outputDirectory>src/main/java/com/me/examples/pm/data</outputDirectory>
<implementation>jdbcconfiguration</implementation>
</component>
</components>
<componentProperties>
<!-- Storing the reveng files in the test branch means we are not
deploying connection information-->
<revengfile>src/test/resources/reveng/model.reveng.xml</revengfile>
<configurationfile>src/test/resources/reveng/hibernate.cfg.xml</configurationfile>
<jdk5>true</jdk5>
<ejb3>true</ejb3>
</componentProperties>
</configuration>
<dependencies>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>classes12</artifactId>
<version>10.2.0.1.0</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib-nodep</artifactId>
<version>2.1_3</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
Run Maven
mvn hibernate3:hbm2java
ich meine Antwort aktualisiert die besagt, wie man "manuell" (durch Maven) – Bozho