0

保存上传的图像的最佳做法是什么?假设我有一个表单,每个表单都有一个 ID。用户可以在一个表单上上传多个图像。我想做的是:

WebContent
 |-- META-INF
 |-- WEB-INF
 |-- files
 |    |-- images
 |    |    |-- Form1
 |    |    |    `--Image1.jpg
 |    |    |    `--Image2.jpg
 |    |    |    `--...
 |    |    |-- Form2
 |    |    |    `--Image1.jpg
 |    |    |    `--Image2.jpg
 |    |    |    `--...
 :

Form1并且Form2是一个文件夹。当用户提交表单时,该文件夹会自动在服务器上创建。这样做是个好习惯吗?谢谢。

4

3 回答 3

2

一个重要的最佳实践是将应用程序本身与用户数据分开。因此,请确保将图像存储在 WebContent 之外的文件系统上。应用程序重新部署可能会删除 WebContent 目录。它还将删除不是您意图的用户内容。

另一个最佳实践是使文件的位置可配置。您不想对其进行硬编码。例如,使用 URL 资源。

文件目录的结构是有意义的。您可能需要文件下的另一个用户特定目录。

于 2013-07-09T09:35:09.460 回答
1

我认为这种方法不一定有什么问题,您是否考虑过多个用户会发生什么?他们最终会覆盖彼此的图像吗?我的建议是在某处使用 UserID,作为目录或附加到文件名。

通常,假设您要在 AWS 之类的云中部署,您会将所有文件夹转移到他们的 S3 技术上,而不是让它们位于您的 WebContent 中。

于 2013-07-09T08:20:09.080 回答
0

您是否在等待大量图像?如果是,您应该考虑将图像分成子文件夹,因为如果一个文件夹中有很多文件,文件系统会变慢。

于 2013-07-09T08:24:56.310 回答