Hibernate: Migration von mapping-Annotationen ist es möglich, zu mischen, hbm und Anmerkungen?

Ich bin derzeit migrieren mein Projekt aus dem Ruhezustand HBM-Zuordnungen Anmerkungen.
Alles war einfach so weit, wie ich behandelt mit kleinen Klassen.
Aber ich habe gleich große Klassen und ich versuche zu mischen, sowohl mapping und Anmerkungen für diese Klasse. Ich habe gelesen, dass dies möglich wurde, mithilfe der hibernate-property "hibernate.mapping.Vorrang" und der Einstellung "Klasse, hbm" anstelle von "hbm, Klasse". (siehe: In Hibernate ist es möglich, verschiedene Annotationen und XML-Konfiguration für eine Entität?)

Ich habe zum Beispiel das folgende Dokument-Klasse:

@Entity
@Table(name="DOCUMENT")
public class Document  {
   @Column(name="DESCRIPTION")
   private String description;
}

und die folgenden Document.hbm.xml Datei:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">    
<hibernate-mapping>
  <class name="Document" table="DOCUMENT" >
    <id name="id" column="DOCUMENT_ID" type="long" />
  </class>
</hibernate-mapping>

In meinem hibernate.cfg.xml Datei, die ich setzen:

<property name="hibernate.mapping.precedence">class, hbm</property>
<mapping class="Document"/>
<mapping resource="Document.hbm.xml"/>

Mein problem ist, dass:
- wenn ich "Klasse, hbm" für die Rangfolge dann habe ich NUR meine Notizen in der Klasse Dokument
- wenn ich "hbm, Klasse" dann habe ich NUR meine Zuordnungen in der hbm-ressource

Nicht jedermann Ding, wenn es einen Weg gibt, um beide Beschriftungen und HBM-Zuordnungen ?

Dank

Kamran

PS: ich benutze : Hibernate 4.1.4 und Spring-Framework 3.1.1

InformationsquelleAutor marcam | 2012-07-04
Schreibe einen Kommentar