0

Hibernate (JPA) には、起動時に @Entity アノテーション付き Bean をスキャンするメカニズムが組み込まれていますか。永続オブジェクトごとに特定の「hbm」ファイルを維持する必要がないようにしています。

現在、私は次のものを持っています:

テスト.java

@Entity
public class Test {
 ...
}

Test.hbm.xml

<hibernate-mapping package="domain">
    <class name="Test" table="test">
    ...
    </class>
</hibernate-mapping>
4

1 に答える 1

0

hbm ファイルごとにすべての @Entity Bean を作成し、起動時に hibernate JPA が各 Bean を特定のテーブルにマップするため、すべての hbm ファイルを削除できます。

はい、起動時にマップされますのでご安心ください。

このようなことができます

<persistence-unit name="myPetStorePU">
    <description>Petstore Persistence Unit</description>
    <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>

  <class>com.sun.javaee.blueprints.petstore.model.Tag</class>
  <class>com.sun.javaee.blueprints.petstore.model.SellerContactInfo</class>
  <class>com.sun.javaee.blueprints.petstore.model.Product</class>
  <class>com.sun.javaee.blueprints.petstore.model.Item</class>
  <class>com.sun.javaee.blueprints.petstore.model.Category</class>
  <class>com.sun.javaee.blueprints.petstore.model.Address</class>
  <class>com.sun.javaee.blueprints.petstore.model.ZipLocation</class>
    <properties>
        <property name="toplink.jdbc.driver" value="oracle.jdbc.driver.OracleDriver"/>
        <property name="toplink.jdbc.url" value="jdbc:oracle:thin:@#############"/>
        <property name="toplink.jdbc.user" value="####"/>
        <property name="toplink.jdbc.password" value="#####"/>
        <property name="toplink.logging.level" value="INFO"/>
    </properties>

</persistence-unit>

すべてのモデルが @Entity クラスです。

于 2013-02-12T13:22:04.800 に答える