2012-12-10 52 views
2

一個很簡單的問題。 我有代表考慮下面的映射文件的順序列表<String>映射在Hibernate上用複合鍵對象

類:

<hibernate-mapping> 
<class name="Order" table="hbmOrder"> 
    <composite-id name="key"> 
     <key-property name="OrderStatus" type="string" /> 
     <key-property name="OrderType" type="string" /> 
     <key-property name="version" type="integer" /> 
     <key-property name="orderId" type="string" /> 
    </composite-id> 
    <property name="ccy" type="string" /> 

我想添加一個新的屬性,它是一個字符串的未排序列表保持銷售名單人。可以有零個,一個或多個銷售人員。

List<String> salesPersons; 

這已經打敗了我。我最好的嘗試,到目前爲止是:

<list name="salesPersons" table="order_salesPersons"> 
     <key column="key" /> 
     <list-index column="index" /> 
     <many-to-many column="order_id" class="java.lang.string" /> 
    </list> 

這不是工作,因爲:

  1. 這是一個許多一對多映射(我想這應該是一個一對多)
  2. Hibernate不支持類java.lang.string

另外,由於項目限制超出了我的控制範圍,因此我無法使用註釋。

我可以在下一個處理中找到大多數例子,處理更復雜的例子。再次,如果任何人都可以指向我一個簡單的例子,這將是一個很大的幫助!

回答

2

而不是許多一對多使用元素:

<element column="order_id" type="java.lang.String"/> 
+0

您好,感謝。我認爲這是問題的一半。但另一個問題是hbmOrder表的關鍵是有四列,所以失敗。 – DUFF