。在這個項目中我有兩個模型,我想創建一個OneToOne
之間的關係。遊戲框架,OneToOne關係我使用<a href="https://www.playframework.com/" rel="nofollow noreferrer">Play Framework</a>(Java的香味)的一個項目不工作
我有一個User
模型和UserLegalName
模型。我希望每個User
有一個UserLegalName
模型。
User
model code
UserLegalName
model code
的問題是User
和UserLegalName
不縫得到 「相關的」
的user_user_id
列始終NULL
。我曾嘗試JoinColumn(name = "user_id")
爲UserLegalName
的User
但這並不工作,要麼
編輯:
採取@Sivakumar答案和修復我的代碼UserLegalName
後現在用於存儲正確
然而,當我試圖獲得用戶的UserLegalName
,它仍然變成null
User.find.where().eq("userId", userId).findUnique()
它返回
{"userId":"f5ea6d1d-d22d-4127-b6e7-0b3d0446edfe","legalName":null}
編輯2:
您可以在User
模型添加fetch=FetchType.EAGER
到OneToOne
註釋,並且每次都會獲取UserLegalName
。但實際上User
模型要複雜得多。它擁有更多的關係。
有沒有不同的方法來做到這一點?通過保持提取類型爲EAGER
它可能會創建效率低下的查詢(例如:我只想要用戶郵件,在一個單獨的表中,但它也查詢User_Legal_Name
表)
你試過從http://stackoverflow.com/questions/8560988/onetoone-mapping-play-framework-enitity解決方案? – Beri 2014-11-25 08:53:52
這個問題應該在你的代碼中,而不是映射,所以告訴我們你用來保存UserLegalName的代碼。還請在你的問題中顯示你應該從哪些數據庫表中獲取數據。 – 2014-11-25 09:10:14
請注意,我首先回答,指出正確保存實體。 – 2014-11-27 16:28:53