我正在创建一个网络应用程序,让用户上传音频,我的问题是,我应该把他们放在哪里?我应该把它们放在Web-Content里面吗?还是在WEB-INF内部?(我不考虑为这些文件使用数据库,因为大多数音频文件都很大)上传和存储文件的最佳实践是什么?当我将应用程序部署到war文件中时,这些文件会尽可能地保留在那里,因为我会将这些文件的相对文件路径存储在数据库中
发布于 2013-01-04 11:02:51
将上传的文件放在任何级别的web应用程序下都绝对不是一个好主意。我的首选是有一个配置文件,其中配置了路径。重要的是,从web根目录完全无法访问该路径,这样就不能在服务器上执行任何上载的文件。
create a text file called <webapp>.properties包含
StorePath=C:/temp/Storage/然后,该文本文件应包含在可从ResourceLoader.getResource()访问的路径下,例如,类路径、WEB-INF
然后可以使用java加载该属性。
java.util.Properties props = new java.util.Properties();
java.net.URL urlx = ResourceLoader.getResource("<webapp>.properties");
props.load(urlx.openStream());
String buildVersion =props.get("StorePath").toString();然后将文件保存到该位置。
发布于 2013-01-04 11:05:11
这取决于您面临的场景,这些音频将用于什么?然而,将资源文件放在你的webapp文件夹中总是一个不好的主意。你可以将它们存储在你的应用程序有权访问的单独文件夹中,或者安装在你的机器上的一些远程存储中,或者其他一些分布式文件系统中,比如HDFS,甚至是像亚马逊S3这样的云存储产品。
发布于 2014-11-05 17:52:56
将文件上传到服务器存储位置(服务器文件系统中的硬盘)的最好方法是在服务器中创建一个文件夹,然后将该文件上传到该文件夹中。上传后,将文件的上传路径放入数据库。
当任何用户想要显示文件时,从数据库中获取文件路径并显示在html/ jsp页面上,并使用适当的html标记显示路径来处理它。
像显示图像一样,您将图像保存在服务器上的目录中,将其路径存储在数据库中,假设其路径为www.xrv.com/images/Sunset.jpg (Absoluteorrelative`).
在jsp中使用<img src="www.xrv.com/images/Sunset.jpg"/>
https://stackoverflow.com/questions/14150409
复制相似问题