一起学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. 运行进行测试 |