我想知道是否有例如salesOrder實體和之間的兩個實體的關係SalesOrderItem有關係一對多 我應該如何堅持他們,即。我是否需要保持訂單和關係,或者有辦法以 劃分持續性,並且首先例如從銷售訂單項目和銷售訂單開始。 這只是一個例子,我想知道是否有一種方法,在JPA 的持久化過程中忽略關係並堅持對象而不需要引用關係,但當然如果有外鍵提供它一次關係中使用JPA持續
回答
一般情況下,你想堅持他們如下:
建立兩個實體之間的所有聯繫;如果孩子引用父母,則設置該引用。如果父級引用子級(ren),請設置那些引用。
堅持這兩個實體。如果一個(父)引用另一個(子),則該關係可以標記爲
Cascade.PERSIST
以允許在持久操作期間遵循引用 - 在這種情況下,您只需要堅持該引用。
您問「是一種分隔堅持的方法,首先是例如從銷售訂單項目和銷售訂單開始」。由於該商品通常會引用它包含訂單,因此很難想象任何合理的情景,您可以在訂單之前堅持該商品。如果您問這些問題對問題的理解如此之少,我會認爲您沒有真正準備好解決可能(或不可能)允許他們爲您工作的例外情況。最好堅持正確的做法。
只要項目實體包含對訂單的特定參考,即使訂單包含子項目的List
或Map
,也可以先創建訂單(@OneToMany中的'1')。在給定的「工作單元」(實體管理器會話)中,當您添加/創建並保留其他子項時,您仍然需要更新父級的列表/地圖。
@ Richard-謝謝你的回答,也許我試着更好地解釋自己。我們正在嘗試開發的是獲取類的列表(類名稱 - 這是實體)的java api動態地(可以是任何),我需要使用反射來構建實體,併爲類型從文件添加數據(我們正在創建api從文件創建實體的模擬數據),當我做反射時,我已經在實體類成員參與到另一個類的內部,我的問題是如果我必須構建它,或者我可以繼續,當完成時堅持一個實體開始實體b, – 2013-03-09 20:48:55
因爲在我得到的類的列表中我擁有所有實體... – 2013-03-09 20:49:32
- 1. 使用JPA關係
- 2. JPA多對一,而不是持續的一對多關係
- 3. JPA:的EclipseLink不持續的雙向關係數據庫
- 4. Mongoid關係沒有持續
- 5. 使用JPA持續在春季
- 6. JPA,使用@ManyToMany關係
- 7. JPA - 何時使用關係?
- 8. 在有外鍵關係的MySQL中JPA/Eclipselink問題持續存在表
- 9. JPA一對多關係持久性Bug
- 10. 堅持OneToOne關係與SpringData JPA
- 11. JPA - 堅持一對多的關係
- 12. 在持續JPA後返回UniqueID JPA
- 13. 如何使用JPA保持多對多關係
- 14. JPA持續失敗GenerationType.IDENTITY
- 15. GAE和JPA持續異常
- 16. JPA EntityManager不會持續
- 17. JPA關係OneToMany
- 18. @ManyToOne關係,JPA
- 19. JPA @OneToOne關係
- 20. JPA關係
- 21. typo3流程持續更新關係
- 22. org.hibernate.PropertyAccessException而持續多對多關係
- 23. 故障與持續的關係
- 24. JPA如何調用合併或持續
- 25. JPA:問題持續存在一個OneToMany關係的2個實體
- 26. 異常而在具有一對多關係DB持續JPA對象
- 27. JPA持續對象與cascase關係,然後將其刪除(休眠)
- 28. 使用休眠和縫持續多對多的關係
- 29. JPA:何時使用ManyToOne關係與值?
- 30. 使用JPA的一對一關係
我不明白你的問題。請提供一些代碼。 – 2013-03-09 19:05:20
我問這個概念是否可以直接爲實體x提供數據,而不用擔心實體y的關係。爲什麼你投下了? – 2013-03-09 19:52:43
我問這個概念,如果我可以直接爲實體x提供數據而不關心實體y的關係,例如,如果我直接將數據提交給數據庫,我不需要擔心它們之間的關係。爲什麼你投票下來? – 2013-03-09 20:02:47