3
A
回答
5
我使用與Oracle在Hibernate映射文件中的ID,當知道被定義是這樣的:
<id name="id" column="item_id">
<generator class="sequence">
<param name="sequence">NAME_OF_YOUR_SEQUENCE</param>
</generator>
</id>
您還可以指定generator類爲「原生」,這是方便,如果你再切換到自動遞增RDMS,如MySQL。在MySQL中,序列位將被忽略。
編輯: 只是重新閱讀你的問題。我不認爲hibernate處理非id列上的序列。我看到的一般方法是在表格中添加觸發器,但這不是一個好的解決方案。
0
如果您使用單獨的Oracle序列,Hibernate將首先向數據庫查詢下一個值,然後執行插入操作(除非您使用優化策略獲取其中的一部分)。
您可以通過檢索,通過調整你的Hibernate XML文件包括下列財產分配上輸入的Oracle價值鞏固這兩個執行爲一體:
<property name="hibernateProperties">
<props>
...
<prop key="hibernate.jdbc.use_get_generated_keys">true</prop>
...
</props>
並在您的列使用序列身份
<generator class="sequence-identity">
<param name="sequence">SEQ_NAME</param>
</generator>
相關問題
- 1. 如何僅爲HQL用途映射一個屬性(在Hibernate中)?
- 2. 如何使用Knockout映射將一個屬性映射到另一個屬性?
- 3. 如何使用hibernate映射類屬性?
- 4. NHibernate將一個屬性映射到另一個表中的列
- 5. 在JPA實體中序列化一個未映射的屬性
- 6. 用另一個xml中的映射替換屬性的值?
- 7. 在Hibernate中映射沒有Java類屬性的列
- 8. 將類的屬性映射到nHibernate中另一個表的列?
- 9. 如何根據Hibernate的屬性將一個jpa實體映射到多個表
- 10. 如何將CSV中的列映射到C#中的類屬性?
- 11. 將多列映射到JPA中的一個屬性
- 12. 如何在Hibernate中映射第三方屬性
- 13. 如何使用映射屬性在NHibernate中創建一對一的映射
- 14. 如何將LINQ EntitySet映射到屬性setter中的List屬性?
- 15. 如何映射具有屬性的一對多關係(Hibernate)
- 16. 休眠:映射在同一列中的兩個屬性
- 17. Hibernate映射 - 在一個表中
- 18. 如何在NHibernate映射類中查找未映射的屬性?
- 19. 如何將子類屬性映射到Table per Hierarchy中的列?
- 20. 如何將兩個外鍵映射映射到Hibernate中的同一主鍵列(一對一)?
- 21. 在Hibernate中將多個集合映射到一個實體中
- 22. Hibernate如何將setter/getters映射到屬性?
- 23. hibernate如何將一個列子字符串映射到一個bean類的屬性
- 24. Hibernate on Oracle:將字符串屬性映射到CLOB列
- 25. 獲取使用Hibernate映射的屬性的列名稱
- 26. 如何在hibernate映射中按順序排列
- 27. Hibernate的延遲加載屬性XML映射
- 28. 如何用ActiveRecord映射多個屬性?
- 29. Hibernate如何映射這個?
- 30. 如何在AutoMapper映射中忽略屬性的屬性?
我們還可以在屬性中給出序列聲明 –
2015-08-06 07:33:14