加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

一起学SpringMVC之文件上传

发布时间:2020-12-15 01:17:08 所属栏目:大数据 来源:网络整理
导读:概述 在Web系统开发过程中,文件上传是普遍的功能,本文主要以一个简单的小例子,讲解SpringMVC中文件上传的使用方法,仅供学习分享使用,如有不足之处,还请指正。 文件上传依赖包 如下所示,文件上传依赖的jar包主要有两个: commons-fileupload-1.4.jarco

概述

在Web系统开发过程中,文件上传是普遍的功能,本文主要以一个简单的小例子,讲解SpringMVC中文件上传的使用方法,仅供学习分享使用,如有不足之处,还请指正。

文件上传依赖包

如下所示,文件上传依赖的jar包主要有两个:

commons-fileupload-1.4.jar
commons-io-2.6.jar

SpringMVC支持文件上传操作步骤

1. 配置支持文件上传的Bean

如下所示:主要配置默认的编码方式,和上传文件的限制大小

1 <!-- 文件上传支持 -->
2      <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
3          property name="defaultEncoding" value="UTF-8"></property4           设置最大上传内容,单位是byte 5          ="maxUploadSize"="1024000"6      </bean>

2. 在处理方法中,以MultipartFile 进行接收

如下所示:MultipartFile表示一个存储在内存中或者磁盘临时文件类型的文件内容。可以获取对应的输入流(InputStream),然后获取输入流中的字节数组内容。

 1     /**
 2      * 显示upload页面,GET访问
 3      * @return
 4      */
 5     @RequestMapping(value="upload",method=RequestMethod.GET)
 6     public ModelAndView upload(){
 7         System.out.println("upload被调用了");
 8         ModelAndView mav=new ModelAndView("upload" 9         return mav;
10     }
11     
12     13      * 用于上传文件
14 15 @throws IOException 
16      17     @RequestMapping(value="upload",1)">RequestMethod.POST)
18     public ModelAndView upload(String desc,@RequestParam("file") MultipartFile file) throws IOException{
19         System.out.println("upload被调用了2"20         String fileName=file.getOriginalFilename();
21         System.out.println("上传的源文件名:"+fileName);
22         System.out.println("文件描述:"+desc);
23         InputStream input= file.getInputStream();
24         OutputStream output=new FileOutputStream("D:upload"+25         byte[] bs=new byte[1024];
26         int len=-1;
27         while((len=input.read(bs))!=-1){
28             output.write(bs,0,len);
29         }
30         output.close();
31         input.close();
32         ModelAndView mav=new ModelAndView("success"33         34 35     

3. 前端(Jsp)页面中

如下所示:method="post" enctype="multipart/form-data"是关键

form action="upload" method="post" enctype="multipart/form-data"2     文件:input type="file" name="file"> br />
3     描述:="text"="desc" /> 4     ="submit"="上传"> 
5 form4. 运行进行测试

如下所示,输出日志如下:

upload被调用了
upload被调用了2
上传的源文件名:readme.txt
文件描述:1235
upload被调用了

备注

我们,已不再年轻,父母已老去,孩子已长大,吃不完的苦,扛不完的责任。活要自己拼命干,钱要自己辛苦赚。
我们,已不再年轻,该吃就吃,该睡就睡,该笑就笑,该休息就休息。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读