使用tomcat上传文件

时间:2011-10-21 04:57:14

标签: java tomcat struts2

使用Tomcat和Struts 2。

public FileAction class
{ 
    ......
    public upload()
    {
        .....   
        String fullFileName = request.getContextPath() + "/productImages/" + filename;
        File theFile = new File(fullFileName);
        FileUtils.copyFile(upload, theFile);
        .....
    }
 }

问题是当我上传图片时,它不会在localhost:8085/shoppingCart/productImages中添加图片,也不会给出任何例外。

但是当我写String fullFileName="c:upload/productImages/" + filename;时,它会将文件保存在c:upload/productImages/路径

表示在c:upload/productImages/案例中正常工作

1 个答案:

答案 0 :(得分:1)

如果要将文件上载到服务器的上下文,则需要使用ServletContext.getRealPath(...)来查找已部署应用程序的基本目录。请注意,如果您正在部署war文件,这将。上传的文件应该转到服务器本身的绝对位置。

要下载上传的图片,您需要编写stream result(因为您使用的是Struts 2),并使用它将上传的文件加载并流式传输回客户端。