Ume*_*thi 7 java tomcat servlets
处理一些导入过程,我需要先在服务器上的某个位置上传文件,然后我需要从这个位置选择文件将其导入系统.我只是想知道什么是存储上传文件的最佳位置.我没什么选择
1)可以在tomcat的根目录中创建一个文件夹,然后将上传文件放在那里,稍后可以为导入过程选择文件.
File dir = new File(System.getProperty("catalina.base"), "uploads");
Run Code Online (Sandbox Code Playgroud)
这是一个很好的选择,天气上面的代码将在所有环境中同样有效
2)我可以在我的应用程序下创建一个uploads文件夹,可以访问它进行文件上传,然后使用以下代码进行导入
ServletActionContext.getServletContext().getRealPath("uploads");
Run Code Online (Sandbox Code Playgroud)
你需要提出宝贵的建议,我需要做的唯一工作就是上传文件并运行上传文件的导入过程,一旦导入成功,就可以将文件从这个文件夹中删除到其他类似处理过的文件等.
Bal*_*usC 10
Run Code Online (Sandbox Code Playgroud)File dir = new File(System.getProperty("catalina.base"), "uploads");
它不适用于没有catalina.base
财产的环境.因此,您需要在webapp的安装手册中正确记录它,以确保在相关的服务器计算机上设置了此属性,或者寻找替代方法.
Run Code Online (Sandbox Code Playgroud)ServletActionContext.getServletContext().getRealPath("uploads");
这不是永久存储的好选择.重新部署WAR时,一切都会丢失.
而是将其存储在webapp之外的已知且固定的路径中,并添加其<Context>
在Tomcat中的路径,/conf/server.xml
以便它也可以在线使用.
如果/conf/server.xml
由于某种原因不想更改Tomcat ,那么您需要创建一个servlet,它使用磁盘读取文件FileInputStream
并将其写入OutputStream
响应.你可以在这里找到一个基本的例子.
归档时间: |
|
查看次数: |
10295 次 |
最近记录: |