spring-mvc中多文件上传

第一步:导入依赖

<!--文件下载和上传的依赖-->
<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.4</version>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.2</version>
</dependency>

第二步:写配置 在spring-mvc 中编写如下配置

 <!--配置文件上传解析器  id必须是这个 id="multipartResolver"-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!--设置默认的编码-->
     <property name="defaultEncoding" value="UTF-8"/>
    <!--设置最大上传文件的大小 -->
     <property name="maxUploadSize" value="#{1024*1024*20}"/>
</bean>

第三步:编写控制器层

// 存在单文件和多文件同时上传   前台传的上传文件的名称不一样
 @RequestMapping("/upload")
 public String upload(@RequestParam(value = "username",required = false) String username,
                      @RequestParam("headerimg") MultipartFile [] file,
                      @RequestParam("header") MultipartFile oneFile,
                      Model model){
     System.out.println("上传的文件信息");
     for (MultipartFile multipartFile : file) {
         //判断一个文件是否上传了 isEmpty()是否是空的
         //上传的不是一个空的
         if (!multipartFile.isEmpty()){
             //我们就上传文件
             try {
                 multipartFile.transferTo(new File("D:\\pic\\upload\\"+multipartFile.getOriginalFilename()));
                 model.addAttribute("msg","文件上传成功了");
             } catch (Exception e) {
                 model.addAttribute("msg","文件上传失败了"+e.getMessage());
             }
         }

     }
     try {
         oneFile.transferTo(new File("D:\\pic\\upload\\"+oneFile.getOriginalFilename()));
         model.addAttribute("msg","文件上传成功了");
     } catch (Exception e) {
         model.addAttribute("msg","文件上传失败了"+e.getMessage());
     }

     return "forward:/index.jsp";
 }

第四步:编写视图层

<form action="${pageContext.request.contextPath}/upload" enctype="multipart/form-data" method="post">
 用户头像:<input type="file" name="headerimg"/><br/>
  用户头像:<input type="file" name="headerimg"/><br/>
  用户头像:<input type="file" name="headerimg"/><br/>
  用户头像:<input type="file" name="headerimg"/><br/>
  用户头像:<input type="file" name="header"/><br/>
  用户名:<input type="text" name="username"/><br/>
  <input type="submit" value="提交"/>
</form>

文件上传步骤:

<%--
    文件上传:
        1.文件上传表单准备 enctype="multipart/form-data
        2.导入fileupload包
        3.只要在springmvc配置文件中,编写一个配置,配置文件上传解析器(MultipartResolver)
        4.文件上传请求处理
           在处理器方法上写一个
            @RequestParam("headerimg") MultipartFile file,封装当前文件的信息,直接保存
--%>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值