我正在创建一个Web应用程序Java EE和Jsp。我使用apache fileupload创建了一个文件上传程序。它运作良好。但我有一个现实世界的问题。
也就是说,假设让我们想象一下我的网站的两位用户上传了一个与Emp_docu.doc
同名的文件。但两者都有不同的内容。上传的文件保存在\uploads
目录中。
现在我的问题是:
如果多个用户上传了具有相同名称的文件,是否所有具有相同名称的文件都将重新编辑,并且只存在单个文件?例如,在上述内容中,不会有两个emp_docu.doc
保存在文件夹\uploads
中,只存在一个emp_docu.doc
,并且上传的任何一个用户都将丢失。
在不降低服务器性能的情况下,它的解决方案是什么?
(即使我们可以重命名文件,是否可以在保存到服务器目录\uploads
之前重命名上传的文件。)
答案 0 :(得分:0)
如果目录相同,我总是在文件名之前附加唯一ID。
例如。对于用户ID 12,文件将是12_Emp_docu.doc
,而用户ID 15该文件将是15_Emp_docu.doc
。
答案 1 :(得分:0)
虽然我更喜欢上面的idea,但这对您也有用:
如果您为每个用户创建了一个上传文件夹,例如
,该怎么办?user1/uploads/Emp_docu.doc
OR
如果您为上传内容中的每个用户创建了一个文件夹,例如
,该怎么办?uploads/user1/Emp_docu.doc