Java 按Id映射时。谁是Id的所有者
假设我们有一个Java 按Id映射时。谁是Id的所有者,java,oop,architecture,software-design,Java,Oop,Architecture,Software Design,假设我们有一个Person和一个Id:String,name:String。 然后,在另一个类中,我们有Map,它通过Id保存这些人。 我的问题是,这个人应该持有该Id,还是现在该Id的所有者就是地图本身。 PS:注意使用map是出于性能原因,但因为它对建模有意义。人是一个实体,它有一个Id,所以是的,它应该保留它 对于我来说,在另一个类中通过映射再次建模是没有意义的,我必须更好地理解您的模型,才能对此进行评论。除非PersonId不是Person模型的标识元素。如果它实际上是一个不同的实体,那
Person
和一个Id:String,name:String
。
然后,在另一个类中,我们有Map
,它通过Id保存这些人。我的问题是,这个人应该持有该Id,还是现在该Id的所有者就是地图本身。
PS:注意使用map是出于性能原因,但因为它对建模有意义。人是一个实体,它有一个Id,所以是的,它应该保留它 对于我来说,在另一个类中通过映射再次建模是没有意义的,我必须更好地理解您的模型,才能对此进行评论。除非PersonId不是Person模型的标识元素。如果它实际上是一个不同的实体,那么人应该有它自己的Id,而PersonId将有一个不同的、单独的Id。。。无论如何,这个模型是相当不完整的,而且很难提出建议
如果这只是一个明显的例子,PersonId是这个人的Id,那么你的地图只是一个索引,这也可以,但不是模型的一部分。我急于写它,我的坏:)。我所说的拥有身份证是指谁对它负责。简单地说,如果我有一张地图,这个人应该还持有这个人名吗?我不知道你为什么说数据库,我没有谈论它。在任何情况下,数据库都不拥有数据,它只存储数据。这是有道理的。所以我认为结论是,这取决于用例。