|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2004
Città: Palermo
Messaggi: 1079
|
[Java] mapping relazione uno a molti con hibernate
Ciao a tutti,
è una delle prime volte che mi trovo ad utilizzare hibernate ed ho un problema nella realizzazione del mapping di una relazione 1 a molti tra due tabelle. La tabella TPS16_CONFIGURATION ha una relazione 1 a N con la tabella TPS25_CURRENCIES_DIFFMIN. La tabella TPS25_CURRENCIES_DIFFMIN ha una chiave composta formata da questi due campi: 1) TPS25_CURRENCIES_DIFFMIN.TPS25_ISO_CURRENCY 2) TPS25_CURRENCIES_DIFFMIN.TPS16_ID Il campo TPS25_CURRENCIES_DIFFMIN.TPS16_ID non è altro che il valore della chiave della tabella TPS16_CONFIGURATION. In particolare è il campo: TPS16_CONFIGURATION.TPS16_NAME. Ho provato a fare in questo modo: 1) File mapping tabella TPS16_CONFIGURATION (file EConfiguration.hbm.xml) 1.a) Ho inserito un tag list in questo modo: Codice:
<list name="currenciesDiffMin" inverse="true" cascade="all-delete-orphan"> <key column="name"/> <one-to-many class="com.intesasanpaolo.tps.model.ECurrenciesDiffmin"/> </list> 2) Ho creato questo file di mapping (file ECurrenciesDiffMin.hbm.xml) per la tabella TPS25_CURRENCIES_DIFFMIN: Codice:
<hibernate-mapping> <class name="com.intesasanpaolo.tps.model.ECurrenciesDiffmin" table="TPS25_CURRENCIES_DIFFMIN" catalog="@CATALOG@" mutable="true"> <comment>Oggetto hibernate che mappa la tabella TPS25_CURRENCIES_DIFFMIN</comment> <composite-id> <key-many-to-one name="configuration" class="com.intesasanpaolo.tps.model.EConfiguration" column="name" ></key-many-to-one> <key-property name="currency" type="string"> <column name="TPS25_ISO_CURRENCY"></column> </key-property> </composite-id> <property name="diffMin" type="double"> <column name="TPS25_DIFF_MIN" not-null="false" /> </property> </class> </hibernate-mapping> In questo modo credo ci siano degli errori ma non riesco a capire come, cosa e perchè sbaglio, qualcuno può aprirmi gli occhi? Grazie, ciao ciao. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:41.