Hibernate逆向生成無主鍵的數(shù)據(jù)表時產(chǎn)生的hbm如:
<class name="class_name" table="table_name" schema="schema_name">
<composite-id name="id" class="class_name">
<key-property name="property_name" type="type_name">
<column name="column_name" length="20" />
</key-property>


</composite-id>
</class>
Hibernate不允許無PrimaryKey的ORM,因此會獨立生成此對象為ORM的PrimaryKey
當(dāng)需要查詢此表,如果此對象中有任意一個字段為NULL,則整條記錄都為NULL
因為Hibenrate約束主鍵不能為空。
解決辦法:可將composite-id標(biāo)簽里可能會為空的字段提取到composite-id外,
將數(shù)據(jù)表所對應(yīng)的POJO添加字段,字段為提取到composite-id標(biāo)簽外的字段屬性
HQL查詢時直接用對應(yīng)的類索引屬性查詢,無需經(jīng)過第三方生成類。
posted on 2009-10-22 15:36
Worker 閱讀(1180)
評論(0) 編輯 收藏 所屬分類:
Web