6.用SpringMVC实现简单的文件上传

6.用SpringMVC实现简单的文件上传

1 文件上传三要素

  1. 表单项 type=“file”

  2. 表单的提交方式 method=“post”(因为get请求限制大小,约为2KB)

  3. 表单的enctype属性是:多部分表单enctype=“multipart/form-data"

        
    名称:
    文件:

    2 文件上传原理

    • 当form表单修改为多部分表单时,request.getParameter()将失效
    • 当form表单的enctype取值为 application/x-www-form-urlencoded 时,
      • form表单的正文内容格式是: name=value&name=value
    • 当form表单的enctype取值为 mutilpart/form-data 时,请求正文内容就变成多部分形式:

6.用SpringMVC实现简单的文件上传_第1张图片

2.单文件上传

步骤分析:

  1. 导入fileupload和io坐标
  2. 配置文件上传解析器
  3. 编写文件上传代码

(1)导入fileupload和io坐标


  commons-fileupload
  commons-fileupload
  1.3.3


  commons-io
  commons-io
  2.6

(2)配置文件上传解析器


    

        

        
    

(3)编写文件上传代码

    
名称:
文件:
@RequestMapping("/getfileupload") public String fileUpload(String username, MultipartFile filePic) throws IOException { // 获取文件名 String originalFilename = filePic.getOriginalFilename(); System.out.println("username="+username+" 上传文件名:"+ originalFilename); // 保存文件 filePic.transferTo(new File("F:/test/"+originalFilename)); return "success"; }

3 多文件上传

名称:
文件1:
文件2:
文件3:
/多文件上传:getmultifileupload @RequestMapping("/getmultifileupload") public String getmultifileupload(String username, MultipartFile[] filePic) throws IOException { for (MultipartFile multipartFile : filePic) { String originalFilename = multipartFile.getOriginalFilename(); System.out.println("username="+username+" 上传文件名:"+ originalFilename); multipartFile.transferTo(new File("F:/test1/"+originalFilename)); } return "success"; }

总结

写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个关于 java开发 的学习思路及方向。从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。

由于内容较多就只放上一个大概的大纲,需要更及详细的学习思维导图的 点击我的Gitee获取。
还有 高级java全套视频教程 java进阶架构师 视频+资料+代码+面试题!

全方面的java进阶实践技术资料,并且还有技术大牛一起讨论交流解决问题。

你可能感兴趣的:(java,后端,java,开发语言)