假設我們有一個Person
與Id: String, name: String
。 然後,在另一個班級,我們有Map<String, Person>
通過身份證持有人。
我的問題是否應該持有該Id。或者現在Id的所有者是地圖本身。
PS:注意使用map出於性能原因,但因爲它使建模變得敏感。按Id進行映射時。誰是Id的主人
0
A
回答
1
人是一個實體,它有一個ID,所以是的,它應該保留它。
對於我來說,再次用另一個類中的Map進行建模是沒有意義的,我不得不更好地理解你的模型以便能夠對此進行評論。除非PersonId是而不是 Person模型的標識元素。如果它實際上是一個不同的實體,那麼Person應該有它自己的Id,並且PersonId會有一個不同的,單獨的Id ...無論如何,這個模型是相當不完整的,而且很難提出建議。
如果它只是明顯的例子,PersonId是Person的Id,那麼你的Map只是一個索引,這也是可以的,但它並不是模型的一部分。
+0
使敏感。所以我想一個結論,這取決於用例。 – Mehdi
相關問題
- 1. 映射按id
- 2. 沒有Id的NHibernate映射
- 3. 在測試Fluent NHibernate映射時測試id值是否是個好主意?
- 4. 複合ID映射配置
- 5. 映射線程ID入庫
- 6. 如何將機器ID /主機名映射/解映射爲對象ID中的3個字節?
- 7. NHibernate的2.0映射的複合-ID內的複合-ID
- 8. 問題與NHibernate映射時,Id是在抽象基類
- 9. 複合ID映射的類問題
- 10. NHibernate的:id設置到接口映射
- 11. Nhibernate /建議映射的屬性和ID
- 12. 獲取一個ManyToMany映射表的ID
- 13. 流利的NHibernate映射錯誤(Id列)
- 14. nhibernate流利的映射覆合ID
- 15. Ansible:要映射與實例ID的
- 16. Google Checkout:將網站訂單ID映射到Google的訂單ID
- 17. 使用uuid作爲id並映射到二進制列的grails
- 18. 如何將Home/Action/id映射到action/id?
- 19. 休眠映射 - 連接表沒有@Id
- 20. O/R映射:一對一ID列
- 21. 休眠JPA繼承id映射
- 22. 如何在列表中映射Id?
- 23. @ManyToOne映射無法保存父ID
- 24. sql查詢打印ID:名稱映射
- 25. Grails靜態映射失敗(重複ID)
- 26. NHibernate - 將ID映射到DB2身份
- 27. 自定義格式ID映射
- 28. Hibernate映射異常與多個@Id
- 29. 休眠映射問題與複合ID
- 30. 作爲int idententity映射對象ID
我很匆忙地寫下來,我的不好:)。通過自己的身份證我是指誰負責它。簡而言之,如果我有一個Map,那麼該人員仍然擁有PersonId? –
Mehdi
我不知道你爲什麼說數據庫,我沒有談論它。在任何情況下,數據庫都不擁有數據,它只存儲它們。 – Mehdi