该demo是关于SpringMVC mutipart文件上传的实例。程序基于Java配置,注解驱动。视图解析器为InternalResourceViewResolver,multipart解析器为StandardServletMultipartResolver,视图为JSP,版本管理工具为Maven,开发工具为IntelliJ IDEA。完整源码已经上传至Github,项目Repository地址为:https://github.com/Dodozhou/SpringMVC_FileUpload,可前往克隆完整项目。
下图是项目结构图:
首先创建initializer包,并在该包下创建WebAppinitializer类:
WebAppInitializer.java
该类继承了abstractAnnotationConfigDispatcherServletInitializer类并重写了4个方法:
- getServletMappings():设置Servlet映射路径
- getRootConfigClasses():指定ContextLoderListener创建的上下文的配置类
- getServletConfigClasses():指定DispatcherServlet创建的上下文加载配置的类
-
customizeRegistration():配置multipart上传的详细参数(托福培训临时存放文件夹,单个文件最大大小,整个请求最大大小)
接着创建RootConfig,该类用来配置ContextLoderListener创建的应用上下文中的bean,通常是后端中间层组件的声明文件。在本项目中不做配置,但需要加上@Configuration注解。
RootConfig.java
重点是WebConfig,在该配置文件中,配置了视图解析器、multipart解析器、静态资源转发器、web组件的bean等。
WebConfig.java
到此,项目的配置已经完成。为了篇幅的简洁,对代码中的具体方法没有讲解,若对配置文件中的方法存在疑问,可参照这篇讲解理论的博客: SpringMVC入门之九:multipart文件上传
下一篇: SpringMVC multipart文件上传详细教程之二:控制器的编写及异常处理