我有以下问题:我为数据库中的任何对象分配UUID。当我从任何来源获取UUID时,我需要知道对象的类型,以便可以在数据库中查询正确的表格。据我所知,UUID版本5支持命名空间,但我不确定我是否清楚地理解其含义。是否可能将UUID与其所属的命名空间相关联,以便以后恢复它?
“是否有可能将UUID与其所属的命名空间相关联以便以后恢复?”是的,可以,请参见此文档。“但是两个不同的命名空间可能会映射到相同的哈希值,如何避免这种情况?”这是一个问题。为了避免这种情况,您应该手动对名称进行编号(而不是对它们进行哈希处理)。然后将数字放入八位字节中的0-3。这样就可以在UUID和名称之间建立一种确定性的映射。