文件下载上传问题的一些疑惑

最近在实现文件上传下载功能,我想文件上传时,怕文件名重复,然后把上传的文件名加上uuid保证独立性。
然后就有一个疑问,当文件下载时我们应该怎么去辨认那个文件是那个呢?

数据库记录好啊,查一下ID然后下载

把文件名拼接上 时间戳啊。

文件明加上时间作为新文件名

数据库中记录的文件名 一定要和实际的文件名保持一致,否则容易乱,会很麻烦

分开保存 把上传的文件重新生成一个新文件名, 新文件名和原文件名,分别保存在两个字段中

以UUID作为目录名,文件放在目录下面。这样文件名可以不原封不动。
也可以上传文件的时刻的毫秒数作为目录名,文件放在目录下。

1楼说的有理,只要在数据库中做好记录,那么就不会在下载的时候找不到文件了。

记然是加上的,那么去除不就是原来的文件名了么?
例:31647885-cb54-4588-ace2-2420c4ff9a50_myFile.jpg
那么去除下划线和前面的字串就是原文件名

字符串查询的时候拼接图片说明