我正在尝试对一些值进行散列处理,并将散列值用作我的数据库中的索引。没有冲突非常重要,这就是我使用 md5 的原因。拥有 128 位,给了我更多的空间,我不必担心碰撞(我知道 md5 不是碰撞安全的)。
无论如何,我如何将 md5 的结果存储在数据库中,以便我可以对其进行索引并快速检索?我正在考虑有两个 Long 变量,其中一个将保存前 64 位的值,另一个保存第二个 64 位的值,并将这两个键用作我的数据库的索引。但我需要一种快速的方法来执行此操作...最快的方法是什么?
我不认为将 md5 散列值存储为字节数组在我需要索引时会有多大帮助。
最佳答案
只需将其存储为字符串 (VARCHAR) 并让您的数据库对其进行索引。这是最简单的解决方案,您将从索引中获得性能提升。
关于java - 将md5转换为Java中的两个long变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12713938/