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

我笔记里也有记文件上传:https://www.cnblogs.com/hhmm99/p/9239782.html

a.选中上传

b:后台显示

c:上传的文件夹

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Ajax上传</title><script src="js/jquery-1.12.4.js"></script>
</head>
<body><h1>文件上传</h1><form id="f" enctype="multipart/form-data">UserName:<input type="text" name="userName"><br/>File1:<input type="file" name="file"><br/>File2:<input type="file" name="file"><br/><input type="button" id="btn" value="提交"></form>
</body>
<script>$(function () {$("#btn").on("click",function () {//使用FormData对象来提交整个表单,它支持文件的上传var formData=new FormData(document.getElementById("f"));//额外带来一些数据
            formData.append("age",14);//使用ajax提交
            $.ajax("ajaxUpload",{type:"post",data:formData,processData:false,//告诉jquery不要去处理请求的数据格式
                contentType:false,//告诉jquery不要设置请求头的类型
                success:function (data) {alert(data);}});})})
</script>
</html>

java后台代码:

@WebServlet("/ajaxUpload")
@MultipartConfig //开启上传功能
/*** @author hh*/
public class FileUploadServlet extends HttpServlet {@Overrideprotected 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();}//获取所有上传的PartCollection<Part> 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");}
}

更多专业前端知识,请上 【猿2048】www.mk2048.com

使用FormData进行Ajax请求上传文件相关推荐

  1. ashx获取input file 文件_通过Ajax方式上传文件(input file),使用FormData进行Ajax请求...

    一直以来上传文件都使用的是别人的组件,今天看下无刷新上传内部具体的做法.上传文件可以使用form的形式来上传,也可以通过构造formData使用ajax来上传文件: 上传图片 $(function ( ...

  2. koa2:通过Ajax方式上传文件,使用FormData进行Ajax请求

    koa2通过表单上传的网上很多,但通过Ajax方式上传文件,使用FormData进行Ajax请求,不好找. 参考了这个用base64上传图片的例子.https://github.com/Yuki-Mi ...

  3. 解决python发送multipart/form-data请求上传文件的问题

    解决python发送multipart/form-data请求上传文件的问题 参考文章: (1)解决python发送multipart/form-data请求上传文件的问题 (2)https://ww ...

  4. Android中使用retrofit2进行网络get请求查询数据和post请求上传文件

    场景 Retrofit2 Retrofit 是对 OkHttp 的封装,是主流的网络框架. 适用于Android 和 Java 的类型安全的HTTP客户端,由Square提供的. Retrofit是一 ...

  5. php ajax xmlhttpreq 上传文件 get,使用Ajax XmlHttpRequest上传文件

    使用Ajax XmlHttpRequest上传文件 嗨,我正在尝试使用此代码发送带有xmlhttprequest的文件. var url= "http://localhost:80/.... ...

  6. SpringMVC实现PUT请求上传文件

    在JQuery中,我们可以进行REST ful中delete和put的请求,但是在java EE标准中,默认只有在POST请求的时候,servlet 才会通过getparameter()方法取得请求体 ...

  7. php post 文件,PHP响应post请求上传文件的方法_php技巧

    本文实例讲述了PHP响应post请求上传文件的方法.分享给大家供大家参考,具体如下: function send_file($url, $post = '', $file = '') { $eol = ...

  8. java获取ajax上传的文件,Java使用Ajax异步上传文件

    相关代码示例: html代码片段: 名称 class="layui-input"> 描述 文件 请选择配置文件 立即提交 重置 js代码片段: //上传配置文件 $(&quo ...

  9. jquery ajax java上传文件_jQuery Ajax方式上传文件的方法

    jQuery Ajax方式上传文件用到两个对象 第一个对象:FormData 第二个对象:XMLHttpRequest 目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这 ...

最新文章

  1. python资料库-Python对接六大主流数据库(只需三步)
  2. 《算法竞赛入门经典》(第二版) 习题2-1 水仙花数(daffodil)
  3. java 自动编译_Tomcat是否自动编译Java Servlet?
  4. C++类对象成员、动态对象、new、delete运算符申请动态空间(C++初学面向对象)
  5. Excel数据转化为sql脚本
  6. nod32更新服务无法设置问题更改
  7. 【个人笔记】图解深度学习
  8. jsp酒店客房预订系统带前端
  9. WebRTC系列补充--native音量控制level
  10. [导入]关于Gmail无法链接的解决方法。
  11. EXCEL条件格式小知识:条件判断如何写公式,可多层if
  12. 计算机专业研究生阶段有几大研究方向可以选择
  13. 用PS怎样把一张图片切割成几张小图片?
  14. echarts图表给柱形图的每个柱子设置不同颜色(包括每个柱子设置渐变颜色)
  15. python杨辉三角输出指定行_使用python打印十行杨辉三角过程详解
  16. 新学期,新FLAG | 尽人事,听天命,守得云开见月明
  17. realsense D435获取RGB-D数据集-制作.klg文件
  18. java 移动平均_EWMA之——EWMA指数加权移动平均模型的Java实现
  19. 西门子低代码部署亚马逊AWS容器服务最佳实践
  20. CM和CMTS的概念和信令交互过程

热门文章

  1. java时间日期格式器_JAVA基础类库(二)-----日期、时间类和格式器
  2. Collatz函数的C++递归实现
  3. 操作 实例 / dom
  4. 【laravel5.4】重定向带参数
  5. windows,python3.x下安装pyspider
  6. 自动计算高度的方法 iOS, height为0, 可以自动计算weith,
  7. poj 3256(DFS)
  8. matlab 图像坐标系
  9. OpenCV 像素的读取与操作
  10. Django 学习笔记第一课