使用FormData进行Ajax请求上传文件的实例代码

Servlet3.0开始提供了一系列的注解来配置Servlet、Filter、Listener等等。这种方式可以极大的简化在开发中大量的xml的配置。从这个版本开始,web.xml可以不再需要,使用相关的注解同样可以完成相应的配置。

a.选中上传

使用FormData进行Ajax请求上传文件的实例代码_第1张图片

b:后台显示

c:上传的文件夹

使用FormData进行Ajax请求上传文件的实例代码_第2张图片

html代码:




 
 Ajax上传
 


 

文件上传

UserName:
File1:
File2:

java后台代码:

@WebServlet("/ajaxUpload")
@MultipartConfig //开启上传功能
/**
 * @author hh
 */
public class FileUploadServlet extends HttpServlet {
 @Override
 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  req.setCharacterEncoding("utf-8");
  //获取用户名
  String userName=req.getParameter("userName");
  //获取年龄
  String age=req.getParameter("age");
  System.out.println(userName);
  System.out.println(age);
  //获取项目部署的绝对路径
  String uploadPath=req.getServletContext().getRealPath("/photos");
  //构建上传的文件夹
  File dir=new File(uploadPath);
  if(!dir.exists()){
   dir.mkdir();
  }
  //获取所有上传的Part
  Collection parts= req.getParts();
  for (Part part:parts) {
   //判断上传的类型是否为空,如果为空则不执行上传
   if(part.getContentType()!=null){
    //获取文件名
    String fileName=part.getSubmittedFileName();
    //执行上传
    part.write(uploadPath+File.separator+fileName);
   }
  }
  //响应上传成功
  resp.getWriter().println("uplaod success");
 }
}

总结

以上所述是小编给大家介绍的使用FormData进行Ajax请求上传文件的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

你可能感兴趣的:(使用FormData进行Ajax请求上传文件的实例代码)