Hibernate映射复合主键
主键类:
Public class CustomerId implements Serializable{ Private final String name; Private final String companyid; } ?
?
?
映射文件?:
<class name=”test.Customer” table=”CUSTOMERS”> <composite-id name=”customerId” class=”test.CustomerId”> <key-property name=”name” column=”NAME” type=”string”/> <key-property name=”companyId” column=”COMPANY_ID” type=”long”/> </composite-id> <version name=”varsion” column=”VERSION” unsaved-value=”0”/> <many-to-one name=”company” class=”test.Company” column=”COMPANY_ID” insert=”false” update=”false”/> <set name=”orders” lazy=”true” inverse=”true”> <key> <column=”NAME”/> <column=”COMPANY_ID”/> </key> </set> </class> <class name=”test.Order” table=”ORDERS”> <many-to-one name=”customer” class=”test.Customer”> <column=”NAME”/> <column=”COMPANY_ID”/> </many-to-one> </class> ?或者:
?
?
<class name=”test.Customer” table=”CUSTOMERS”> <composite-id name=”customerId” class=”test.CustomerId”> <key-property name=”name” column=”NAME” type=”string”/> <key-many-to-one name=”company” class=”test.Company” column=”COMPANY_ID”/> </composite-id> <version name=”varsion” column=”VERSION” unsaved-value=”0”/> <set name=”orders” lazy=”true” inverse=”true”> <key> <column=”NAME”/> <column=”COMPANY_ID”/> </key> </set> </class> <class name=”test.Order” table=”ORDERS”> <many-to-one name=”customer” class=”test.Customer”> <column=”NAME”/> <column=”COMPANY_ID”/> </many-to-one> </class>
?
?