本文采用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、控制器中配置同上。