如何为Java对象分配标识符

时间:2017-03-07 11:34:25

标签: java angularjs object

我有以下情况。在我的Java后端,我从服务中收集一些数据,我从中创建数据对象并将其传递给我的Angular前端。然后,用户可以选择对其中一个对象执行某些操作,并将其更改后的状态发送到后端。后端再次从服务收集相同的数据,现在我必须确定用户选择的对象。我想通过创建一个公共标识符来做到这一点。以下是我的问题:如何才能最好地生成标识符?

首先,我做了以下事情:

  • 从服务中获取数据
  • 在for-loop中分配增加的整数

但是,我遇到了以下问题。第二次调用服务时,相同的数据可能会以不同的顺序返回。所以我的第一个想法是首先对收集的数据进行排序,然后分配整数。但订购这些数据非常痛苦,所以我想到了其他的东西:

  • 获取使其唯一的数据对象的两个字段
  • 从这些字段中创建一个字符串并连接
  • 对结果
  • 执行.hashCode()

这会创建一个无法追溯到原始数据的int。这正是我想要的,但现在是有趣的部分。 hashCodes可能会发生冲突。我担心,在非常非常罕见的情况下,即使原始字符串不同,hashCode也是一样的!

我的恐惧是否已经停止?我怎样才能创造出更好的身份?

0 个答案:

没有答案