springmvc文件上传

本文采用MultipartResolver对象获取上传文件,因此需要对该对象进行配置。

基于纯注解配置的springmvc环境:

  1、在实现了AbstractAnnotationConfigDispatcherServletInitializer接口的的类中,重写customizeRegistration()方法。

  2、调用参数的setMultipartConfig()方法。

@Override
    protected void customizeRegistration(Dynamic registration) {
        //第一个参数为临时路径,第二个参数为允许上传文件的最大大小(字节),第三个参数为运行请求的最大大小(字节)
        registration.setMultipartConfig(new MultipartConfigElement("/uploads",2097152,4194304,0));
    }

  3、控制器中获取该请求路径的方法中,参数需要用@RequestPart("XXX")注解,其中xxx代表上传文件的名称。接收的参数可以用字节数组,或spring的MultipartFile对象。

public void pic(@RequestPart("updatafile") MultipartFile file) throws IllegalStateException, IOException{
        file.transferTo(new File("d://data//"+file.getOriginalFilename()));
    }

基于xml文件的springmvc环境:

  1、在web.xml中的servlet配置中添加参数

  2、控制器中配置同上。

原文地址:https://www.cnblogs.com/yxth/p/6909090.html