Springmvc异步上传文件

<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.ext.js" type="text/javascript"></script>
<script src="js/jquery.form.js" type="text/javascript"></script>
<
form action="" method="post" id="jvForm" enctype="multipart/form-data"> <input type="text" name="name"/> <input type="file" name="pic" id="pic"/> <input type="submit" value="提交"/> </form>
<script>
      $(function(){
          var options = {
              url : "upload/uploadPic.do",
              dataType : "json",
              type : "post",
              success : function(data){
                  alert(2);
              }
          };
          $("#pic").change(function(){
              alert(1);
             $("#jvForm").ajaxSubmit(options)
          });
      });
</script

springmvc配置文件处理器:

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
     <property name="maxUploadSize" value="1048576"/>
</bean>

controller

@Controller
@RequestMapping(value = "/upload")
public class UploadController {
    
    @RequestMapping(value = "/uploadPic.do")
    public String uploadPic(@RequestParam(required=false) MultipartFile pic){
        System.out.println(pic.getOriginalFilename());
        return "success";
    }
    
}

 

转载于:https://www.cnblogs.com/tuifeideyouran/p/4641188.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用Spring MVC进行异步文件上传时,需要进行以下步骤: 1. 在Spring MVC的配置文件中启用异步支持,可以使用<mvc:annotation-driven>元素或@EnableWebMvc注解来完成。 2. 创建一个控制器方法来处理文件上传请求。该方法应该使用@RequestParam注解来接收文件,并且需要使用@RequestBody注解来指定处理请求体的方式为异步。 3. 创建一个异步任务来处理文件上传操作。可以使用Spring异步任务支持,即@Async注解来完成。在异步任务中,可以使用Spring的ResourceUtils类将文件保存到指定的位置。 4. 返回一个异步结果对象来表示文件上传的状态。可以使用DeferredResult或ListenableFuture等Spring提供的异步结果对象来完成。 下面是一个示例控制器方法的代码: ``` @RequestMapping(value = "/uploadFile", method = RequestMethod.POST) @ResponseBody public DeferredResult<String> handleFileUpload(@RequestParam("file") MultipartFile file) { DeferredResult<String> deferredResult = new DeferredResult<>(); AsyncTask asyncTask = new AsyncTask(file, deferredResult); asyncTask.execute(); return deferredResult; } ``` 在该示例代码中,handleFileUpload方法使用DeferredResult来表示异步处理的结果,然后创建一个AsyncTask对象来处理文件上传操作。AsyncTask类是一个自定义的异步任务类,其中包含一个execute方法,用于执行文件上传操作。在该方法中,使用ResourceUtils类将文件保存到指定的位置,并最终将文件上传的结果通知给DeferredResult对象。 请注意,在使用Spring MVC进行文件上传时,需要确保上传的文件大小不超过服务器所允许的最大限制。可以通过在Spring MVC的配置文件中配置multipartResolver来设置上传文件的最大大小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值