2017-09-13 78 views
0

假设我们有一个PersonId: String, name: String。 然后,在另一个班级,我们有Map<String, Person>通过身份证持有人。
我的问题是否应该持有该Id。或者现在Id的所有者是地图本身。
PS:注意使用map出于性能原因,但因为它使建模变得敏感。按Id进行映射时。谁是Id的主人

+0

我很匆忙地写下来,我的不好:)。通过自己的身份证我是指谁负责它。简而言之,如果我有一个Map ,那么该人员仍然拥有PersonId? – Mehdi

+0

我不知道你为什么说数据库,我没有谈论它。在任何情况下,数据库都不拥有数据,它只存储它们。 – Mehdi

回答

1

人是一个实体,它有一个ID,所以是的,它应该保留它。

对于我来说,再次用另一个类中的Map进行建模是没有意义的,我不得不更好地理解你的模型以便能够对此进行评论。除非PersonId是而不是 Person模型的标识元素。如果它实际上是一个不同的实体,那么Person应该有它自己的Id,并且PersonId会有一个不同的,单独的Id ...无论如何,这个模型是相当不完整的,而且很难提出建议。

如果它只是明显的例子,PersonId是Person的Id,那么你的Map只是一个索引,这也是可以的,但它并不是模型的一部分。

+0

使敏感。所以我想一个结论,这取决于用例。 – Mehdi