假设我们有一个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映射
- 3. 没有Id的NHibernate映射
- 4. 在测试Fluent NHibernate映射时测试id值是否是个好主意?
- 5. 复合ID映射配置
- 6. 映射线程ID入库
- 7. 如何将机器ID /主机名映射/解映射为对象ID中的3个字节?
- 8. 由反射映射Id属性
- 9. 谁拿到ID进入的form_for
- 10. NHibernate的2.0映射的复合-ID内的复合-ID
- 11. 问题与NHibernate映射时,Id是在抽象基类
- 12. 休眠映射主键使用另一个类的ID
- 13. 休眠映射:实体ID映射中的重复列
- 14. 移的ID(ID = ID + 1)其中ID是主键
- 15. 复合-ID休眠复杂的映射
- 16. 与PrettyFaces重复的映射ID
- 17. Ansible:要映射与实例ID的
- 18. 有效的方式来映射ID
- 19. 复合ID映射的类问题
- 20. symfony2如何获得映射表的ID?
- 21. 流利的NHibernate映射错误(Id列)
- 22. 获取一个ManyToMany映射表的ID
- 23. nhibernate流利的映射复合ID
- 24. Nhibernate /建议映射的属性和ID
- 25. NHibernate的:id设置到接口映射
- 26. Google Checkout:将网站订单ID映射到Google的订单ID
- 27. 使用uuid作为id并映射到二进制列的grails
- 28. 数据节点上的映射是由谁运行的?
- 29. 将ID映射到OTP/Erlang中的进程的习惯用法是什么?
- 30. 将附加列映射到复合id,同时保留其属性映射
我很匆忙地写下来,我的不好:)。通过自己的身份证我是指谁负责它。简而言之,如果我有一个Map,那么该人员仍然拥有PersonId? –
Mehdi
我不知道你为什么说数据库,我没有谈论它。在任何情况下,数据库都不拥有数据,它只存储它们。 – Mehdi