我想在jsp中上传一个图像文件。我的IDE是eclipse。不幸的是,该文件正在上载到Eclipse.exe所在的路径。我想上传它在我的项目文件夹的工作区。默认情况下如何更改fileUpload路径。请帮帮忙
发布于 2012-03-11 22:39:55
您不应该在File中使用相对路径
File file = new File("filename.ext");你永远不知道它会在哪里结束。更重要的是,无论最终结果是什么,都可能根本无法写,或者当webapp应用程序重新部署或服务器重新启动时,它可能被完全擦除。你无法从网络应用程序中控制这一点。
您应该使用驻留在项目文件夹和部署文件夹之外的绝对路径,服务器管理员必须创建该文件夹:
File file = new File("/path/to/all/uploads", "filename.ext");在运行服务器在C:\磁盘上的Windows上,它将以C:\path\to\all\uploads结束。您只需要确保这个文件夹已经准备好了。
您还应该设计您的webapp,使这个绝对路径是可外部配置的,这样您就不需要在每次路径更改时都硬编码路径并重新编译代码。例如,作为VM参数或环境变量。
-Dupload.location=/path/to/all/uploads然后,您可以按以下方式检索此文件夹:
String uploadLocation = System.getProperty("upload.location");
// ...
File file = new File(uploadLocation, "filename.ext");另请参阅:
https://stackoverflow.com/questions/9653450
复制相似问题