我有一个存储某些数据位置的数据库。为简单起见,让它成为
Resource
----------
id (PK)
resourceLocation
在我用Java编写的应用程序中,我所拥有的只是存储在resourceLocation
的文件的二进制数据。只有这个二进制数据,我需要一些方法来从数据库中获取此记录。
我唯一能想到的是这样的事情。将新列添加到名为md5的Resource
表中。这将存储位于resourceLocation的文件的MD5。
Resource
----------
id (PK)
resourceLocation
md5
然后在我的代码中,当我拥有的是二进制数据时,我只需获取数据的MD5并能够在数据库中找到记录。
我对这种方法有几个问题。首先,任何人都可以想到更好的方法。其次,为此目的,是否有比MD5更好的哈希算法。我担心的是,我最终可能会创建两个创建相同MD5哈希的文件。如果发生这种情况,我的方法就失败了。