如何在jsp和servlet中下载文件?

问题描述 投票:0回答:1

我正在从事jsp项目。我可以选择下载文件或图像。但是问题是下载文件后,似乎文件格式不受支持。如何解决该问题?

java jsp servlets
1个回答
0
投票

首先,在jsp页面中创建一个简单的链接,该链接将您重定向到servlet。您可以放置​​任何类型的文件来代替jpg。

<a href="ServletName?value=filename.jpg">Downlaod</a>

这里是用于从Web目录下载任何文件的servlet代码。不要忘记在您的网页目录中创建“文件”文件夹并将其粘贴。

try (PrintWriter out = response.getWriter()) {
        //fetch the file name from the url
        String name = request.getParameter("value");
        //get the directory of the file.
        String path = getServletContext().getRealPath("/" + "files" + File.separator + name);
        //set the content type
        response.setContentType("APPLICATION/OCTET-STREAM");
        //force to download dialog
        response.setHeader("Content-Disposition", "attachment; filename=\"" + name + "\"");

        FileInputStream ins = new FileInputStream(path);


        int i;
        while ((i = ins.read()) != -1) {
            out.write(i);
        }
        ins.close();
        out.close();
    }

仅此而已。您可以查看此Download File in jsp and servlet youtube视频以了解更多。

© www.soinside.com 2019 - 2024. All rights reserved.