Bonjour,
dans mon projet j'ai besoin de faire un mapping qui je pense est assez courant :
Voici le shema relationnel
- bookOrder(id, date, ...)
- book(id, isbn, title, price, ...)
- OrderItems(bookOrder_id, book_id, quantity) clé primaire : composition des premièrs champs
Le problème se situe au niveau de la table association (orderItems). Effectivement, non seulement
elle liste les associations mais elle apporte aussi l'information de quantité.
Ma question comment mapper une telle association?
voici ce à quoi j'avais pensé :
Hibernate version:3.1.3
Mapping documents: <hibernate-mapping> <class name="hibernate.TBookOrder" table="t_bookorder">
<id name="id" type="int"> <column name="id" sql-type="int(4)"/> <generator class="increment" /> </id>
<property name="date" type="date"> <column name="date" sql-type="timestamp" not-null="false"/> </property> <many-to-one name="vendor" column="vendor_code" class="hibernate.TVendor" not-null="true" cascade="all"/> <many-to-one name="customer" column="customer_code" class="hibernate.TCustomer" not-null="true" cascade="all"/> <set name="orderItems" table="t_orderitems" lazy="true"> <key column="bookOrder_id" /> <many-to-many column="book_id" class="hibernate.TBook" /> </set> </class> </hibernate-mapping>
Name and version of the database you are using: MySQL
Je compte faire un lien unidirectionnel.
Cette solution n'en est en fait pas une, puisque je ne retrouve plus ma quantité.
Merci pour votre aide précieuse!
|