2

我从未在 JSF 中使用过上传功能,但现在我必须使用。我有几个问题,它们就像“傻瓜”系列问题。所以:

1) 将用户的图片登录到数据库或服务器的文件系统?

2)如果服务器相对或固定路径或根 url 到 db/properties 和相对部分到 db 呢?

3)如果是DB,使用JPA2 + Mysql时的性能如何?否则有什么缺点吗?

4) 如果使用服务器,将图像的新上下文添加到 server.xml 并使用来自地址 www.examble.com/imagesfolder/images.jpg 的图像是否安全?如何避免人人都能看到图片的情况?

5) 处理上传的最佳方式是什么?我正在使用 Primefaces,它是否适合这个目的或其他用途?

6)任何好的教程或示例如何像专业人士一样做到这一点:)?

7) 如何避免可能存在同名文件的情况?散列名称还是?

8)如果(真的很大)我决定将我的应用程序共享到两个物理服务器,图片路径有问题怎么办?

9)在我的情况下,我有每个人都共有的图片和“登录用户拥有的图片”。如果你知道我正在使用 Primefaces、JPA2 和 Mysql 并且我在服务器?

10)对每个人来说都是非常美好和炎热的夏天!

萨米人

4

1 回答 1

2

您的大部分问题都是关于上传文件后如何处理文件,这是一个设计问题,取决于软件架构师、团队负责人,或者最后是您自己。服务器文件系统/数据库文件保存有两个很好的答案:

要处理“7)”和“8)”中描述的问题,您应该使用文件服务器和内容管理系统。它们还增加了更多的好处,而不仅仅是文件存储,如搜索、索引等等。这里有些例子:

使用 JSF 实现文件上传(注意:要像专业人士那样做,请按照专业人士的方式):

试试这些样本。如果您的编码有问题,最好提出一个新问题。

编辑:我忘记了数字 4,谢谢提醒。如您所述,我将添加一个新上下文,并创建一个过滤器,该过滤器将捕获对该新上下文的请求并将重定向到默认 URL。

关于这个问题的更多信息:

于 2012-06-30T05:16:12.367 回答