ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Spring MVC 九大组件及其配置

2022-07-17 12:06:04  阅读:137  来源: 互联网

标签:文件 Spring 配置 九大 MVC 组件


  既然Spring MVC本质就是Servlet的封装,那么其工作流程应该围绕Servlet,只是处理细节更具层次:

      

   上图中就涉及到封装了的Spring MVC的九大组件,大致作用如下:  

      

   在Spring Boot Web项目整合jsp页面访问(非web项目改为web项目适用) - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)示例了spring-mvc整合jsp,为什么这样整合呢?这就与Spring MVC的九大组件中的ViewResolver(视图解析器)息息相关——具体整合jsp引擎的过程Spring Boot已经处理了,用户需要处理的是ModelAndView及View对象。实际在Spring MVC中若需要集成一个模板引擎的话——即配置静态资源映射,需要定义ViewResolver。通过上图中关于九大组件的具体执行流程可以明确ViewResover的输入输出分别是ModelAndView及View对象。

  所以Spring MVC的配置与其九大组件息息相关,通常涉及MVC的某个配置本质上就是九大组件的初始化或相关参数配置。Spring MVC常涉及配置如下(不限于以下): 

  1、静态资源映射

    项目中静态文件(js、css、图片)等需要直接访问,可以在配置中重写addResourceHandlers方法实现。在Spring MVC中如何处理的呢?

      

     add静态资源的同时,设置了viewRevoler视图解析器相关内容。

  2、拦截器配置

    具体操作参考Spring MVC拦截器(Interceptor)使用 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com),不再赘述。

  3、@ControllerAdvice

      

       

  4、文件上传配置

    文件上传是一个项目里常用的功能,Spring MVC通过配置一个MutipartResolver来上传文件。在Spring的控制器中,通过MultipartFile来接收文件,通过MultipartFile[]接收多个文件上传——文件保存缓存。

      

       

  5、自定义HttpMessageConverter

  6、服务器端推送技术

  7、快捷的ViewController  

    参考Spring MVC拦截器(Interceptor)使用 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)最后补充部分。

  8、路径匹配参数配置

    在Spring MVC中,路径参数中如果含有“.”的话,“.”后的值会被截断忽略。为解决这个问题其提供了路径匹配参数处理,如下:

      

     高版本Spring MVC已经将该种场景默认设置为false,不需要再对此种情况进行处理。

  更多配置由@Configuration和@EnableWebMvc注解可以实现完全由开发者接管控制的MVC配置,具体通过实现WebMvcConfigurer接口完成:

      

 

 

  

 

标签:文件,Spring,配置,九大,MVC,组件
来源: https://www.cnblogs.com/ilovebath/p/15560655.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有