松鼠的博客

导航

JSP页面实现上传下载

 

本文使用的是smartupload工具实现文件的上传下载:

工具:

1、Eclipse

2、jspsmart.jar(百度搜索jspsmartupload.jar下载)

 

JSP页面:

 1 <%--上传 --%>

 2 <form action="upload" method="post" enctype="multipart/form-data">

 3 <input type="file" name="file">

 4 <input type="submit" value="上传">

 5 </form>

 6

 7

 8 <%--下载 --%>

 9 <a href="down?file=A.jpg">下载</a>

10 <form action="down" method="post">

11 <input type="hidden" name="file" value="B.jpg">

12 <input type="submit" value="下载">

13 </form>

Servlet上传处理页面:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //设置字符集(可以通过Filter设置)

        request.setCharacterEncoding("utf-8");

        response.setCharacterEncoding("utf-8");

        response.setContentType("text/html;charset=utf-8");

        //获取一个SmartUpload对象

        SmartUpload upload=new SmartUpload();

        //初始化

        ServletConfig config=this.getServletConfig();

        upload.initialize(config, request, response);

        try {

            //上传文件

            upload.upload();

            //获取上传的文件对象

            File file=upload.getFiles().getFile(0);

            //指定保存文件的路径

            java.io.File newfile=new java.io.File(this.getServletContext().getRealPath("/")+"image");

            if(!newfile.exists())

            {

                newfile.mkdirs();

            }

            //保存文件

            file.saveAs(newfile+"/"+file.getFileName(), file.SAVEAS_PHYSICAL);

            response.getWriter().println("上传成功");

            System.out.println(newfile+"/"+file.getFileName());

        } catch (SmartUploadException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

Servlet下载处理页面:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {             

        //从JSP页面获取到用户需要下载的文件名

        String file=request.getParameter("file");

        //获取一个SmartUpload对象

        SmartUpload download=new SmartUpload();

        //初始化

        ServletConfig config=this.getServletConfig();

        download.initialize(config, request, response);

        //禁止浏览器根据后缀名自动打开文件

        download.setContentDisposition(null);

        try {

        //指定下载地址   
download.downloadFile(this.getServletContext().getRealPath("/")+"image/"+file);

        } catch (SmartUploadException e) {

            e.printStackTrace();

        }

    }

 

 

 

参考文章:http://blog.ncmem.com/wordpress/2023/09/14/jsp%e9%a1%b5%e9%9d%a2%e5%ae%9e%e7%8e%b0%e4%b8%8a%e4%bc%a0%e4%b8%8b%e8%bd%bd/

欢迎入群一起讨论

 

 

posted on 2023-09-14 15:39  Xproer-松鼠  阅读(46)  评论(0编辑  收藏  举报