我已经开发了一个在服务器端使用Tomcat 6.0.32的Web应用程序。哪里可以保存用户文件?
在客户端,用户可以发送文件(最大大小:10MB),我的web应用程序应该将它们保存在本地。 这些文件不应通过URL直接实现(例如:http://www.mywebapp.com/user/file1.png)。
我在哪里保存这些文件?我想在/ WEB-INF/user_folder /中还有其他位置?
我已经开发了一个在服务器端使用Tomcat 6.0.32的Web应用程序。哪里可以保存用户文件?
在客户端,用户可以发送文件(最大大小:10MB),我的web应用程序应该将它们保存在本地。 这些文件不应通过URL直接实现(例如:http://www.mywebapp.com/user/file1.png)。
我在哪里保存这些文件?我想在/ WEB-INF/user_folder /中还有其他位置?
从理论上说,你可以把这些文件的任何地方:
实际上,由您来决定哪一个最容易管理。例如:
您可以使用apache文件上传库和apache commons io.出于安全原因,最好将其他文件保存到您的文件中。例如在硬盘驱动器中的某个位置,并将该位置存储在数据库中。有人可以下载您的文件通过你的网址,如果你保存你的文件在你的网页文件夹。 然后你可以创建一个servlet来打开文件并发送给客户端。
保存上传下的网络信息(WEB-INF)目录肯定会隐藏文件远离用户,但是在实践中,几乎没有人不那。下次您对WAR进行新修订时,可能会失去保存在该文件夹中的所有内容。
URL和上下文的控制(例如mywebapp.com/user/*)应该由您通过在web.xml
中配置或者使用各种MVC框架(如Struts,struts.xml
)来控制。
您可能想要提前考虑并将这些用户上传的文件保存在服务器的其他位置,如/apps/myproject/user-uploads
。
+1文件安全性,备份和空间管理问题。 –
我认为石碑是最好的地方。 – Alvin
LOLLLL :)我用过石头片。 – CeccoCQ