Servlet3.0如何实现文件的上传

2025-10-03 19:06:37

1、编写上传页面,在WebContent目录下创建一个NewFile.jsp文件,并编写如下代码。注意: 必须加上  enctype="multipart/form-data" .表示以二进制的数据格式来传输。

Servlet3.0如何实现文件的上传

Servlet3.0如何实现文件的上传

2、开发处理文件上传的Servlet

 1、使用注解@MultipartConfig将一个Servlet标识为支持文件上传。

 2、Servlet3.0将multipart/form-data的POST请求封装成Part,通过Part对上传的文件进行操作。

Servlet3.0如何实现文件的上传

Servlet3.0如何实现文件的上传

3、将控制台打印的文件上传地址复制到地址栏。查看上传的文件,页面提示上传成功!

Servlet3.0如何实现文件的上传

Servlet3.0如何实现文件的上传

Servlet3.0如何实现文件的上传

Servlet3.0如何实现文件的上传

4、在编写servlet时,应该注意 必须注解 @MultipartConfig 将一个Servlet标识为支持文件上传,否则会导致上传失败。还有就是JSP页面上 form表单中 ,必须加上 enctype="multipart/form-data" .表示以二进制的数据格式来传输。

Servlet3.0如何实现文件的上传

5、文件上传servlet类的代码编写。dopost()方法中的主要代码:(读者可参考注释自行进行编写,然后按照以上步骤进行测试)。

            request.setCharacterEncoding("utf-8");                            //获取文件部件part           Part part=request.getPart("filename");                //获取服务器的路径 即上传路径        String root=request.getServletContext().getRealPath("/file");                     //获取上传文件的头部信息        String headname=part.getHeader("content-disposition");                           //获取文件后缀名         String ext = headname.substring(headname.lastIndexOf("."), headname.length()-1);                                // 上传目的地完整的路径         String filename=root+"/"+UUID.randomUUID().toString()+ext;         System.out.println(filename);                       //导入文件            part.write(filename);           request.setAttribute("info", "上传成功!");           request.getRequestDispatcher("/NewFile.jsp").forward(request, response);    }

Servlet3.0如何实现文件的上传

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢