- 前端控制器:对其他组件进行解耦,这样就增加了组件的可扩展性 无需开发直接配置
- 处理器映射器:无需开发,直接用,作用见上面
- 处理器适配器:无需开发,
- 处理器:需要开发,方式很多
- 视图解析器:无需开发
- 视图:需要开发
处理器映射器、处理器适配器、视图解析器这三个是默认配置的,在下面位置中可以查看
文章插图
DispatchServlet.properties
文章插图
BeanNameUrlHandlerMapping:映射器
4.1、非注解的处理器映射器和处理器适配器[看看即可]BeanNameUrlHandlerMapping:映射器
在springmvc配置文件中,配置BeanNameUrlHandlerMapping
文章插图
他的作用是找到在springmvc.xml中配置的url和处理器的bean
文章插图
HttpRequestHandlerAdapter:适配执行实现了HttpRequestHandler接口的处理类的方法
在springmvc配置文件中,配置HttpRequestHandlerAdapter
文章插图
它的作用就是适配实现了HttpRequestHandler接口的处理类,也就是找到该处理类对应的方法
如何适配,就是需要看源码了,可以百度一下讲解该适配器的源码 。
SimpleControllerHandlerAdapter:适配执行实现了Controller接口的处理类的方法
在springmvc配置文件中,配置
SimpleControllerHandlerAdapter
文章插图
总结:这就是非注解的组件的配置方式,很简单,注意
- 处理器映射器和处理器适配器可以配置多个
- 处理器映射器和处理器适配器可以混用
- org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping 是在spring3.1之前使用的注解映射器
- org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping是在spring3.1之后使用的注解映射器
- org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter 是在spring3.1之前使用的注解适配器
- org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter是在spring3.1之后使用的注解配置器
1、注解方式的映射器和适配器在3.1版本前后是不一样的,使用3.1之后的
2、注解方式的处理器映射器和处理器适配器必须配对使用,不能与非注解的处理器映射器和适配器混用(用了注解的就不能在配置非注解的,二选一)
配置方式有两种:
1、使用bean标签配置
文章插图
2、使用mvc标签(推荐)
文章插图
4.3、视图解析器4.3.1、JSP视图解析器(默认的就是使用该解析器)
文章插图
其中两个配置的意思是:prefix:前缀 suffix:后缀。配置之后在指定视图时,就不用写这前缀和后缀了,直接写关键代码即可 。看下图
文章插图
虽然指定视图只写 items/itemsList 但是会帮我们加上我们配置的前缀和后缀,也就是变为了
/WEB-INF/jsp/items/itemsList.jsp
4.3.2 Freemarker视图解析器
推荐阅读
- 12个适合后台管理系统开发的前端框架
- 如何用Netty写一个高性能的分布式服务框架?
- SSM三大框架整合详细教程
- Mockito 一个优秀的 Mock 测试框架
- Mybatis框架实现一对多查询两种不同的实现方式
- 框架的本质分析——Spring框架
- Spring MVC 框架搭建配置方法及详解
- 不要再封装各种Util工具类了,这个神级框架值得拥有
- 了解一下微信小程序的框架
- FastAPI 大型项目模板框架