2009-06-16 15 views
0

kann mir eine vollständige 2 Mapping-Datei zur Verfügung stellen, die Kaskadenlöschung implementiert. measn wenn A contase eine Menge von B dann wenn A gelöscht wird B shold automatisch gelöscht werden.Hibernate Kaskade Löschen Beispiel

+0

Ich kann nur ein Buch NHibernate In Action vorschlagen. Sie haben ein Beispiel darin. – zvolkov

Antwort

0

Sie benötigen nur 1 Zuordnungsdatei: die des übergeordneten Objekts. Z.B. Dieses Beispiel aus Hibernate in action

<?xml version="1.0"?> 
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> 
<hibernate-mapping> 
    <class name="hello.Message" table="MESSAGES"> 
    <id 
     name="id" 
     column="MESSAGE_ID"> 
     <generator class="increment"/> 
    </id> 
    <property 
     name="text" 
     column="MESSAGE_TEXT"/> 
    <many-to-one 
     name="nextMessage" 
     cascade="all" 
     column="NEXT_MESSAGE_ID"/> 
    </class> 
</hibernate-mapping> 

Die "Kaskade" Parameter macht den Job. Wenn Sie nur das kaskadierende Löschen wünschen, sollten Sie cascade = "delete" verwenden. Andere Optionen sind "all-delete-orphan" und "delete-orphan". Weitere Informationen finden Sie unter Hibernate documentation.

Verwandte Themen