一文搞懂Spring MVC

欢迎客官移步到简研–简简单单科研中学习和交流

一、Spring MVC核心原理和组成:

Spring MVC主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。

一文搞懂Spring MVC_第1张图片
一文搞懂Spring MVC_第2张图片
一文搞懂Spring MVC_第3张图片
部分配置网址

二、各个接口的解释:

HandlerMapping接口 – 处理请求的映射
HandlerMapping接口的实现类:SimpleUrlHandlerMapping通过配置文件,把一个URL映射到Controller,
DefaultAnnotationHandlerMapping 通过注解,把一个URL映射到Controller类上

HandlerAdapter接口 – 处理请求的映射
AnnotationMethodHandlerAdapter类,通过注解,把一个URL映射到Controller类的方法上

Controller接口 – 控制器
由于我们使用了@Controller注解,添加了@Controller注解注解的类就可以担任控制器(Action)的职责,所以我们并没有用到这个接口。

HandlerInterceptor 接口–拦截器
ViewResolver接口的实现类:UrlBasedViewResolver类 通过配置文件,把一个视图名交给到一个View来处理InternalResourceViewResolver类,比上面的类,加入了JSTL的支持

一文搞懂Spring MVC_第4张图片

三、配置文件的解释

http://elf8848.iteye.com/blog/875830

配置1

一文搞懂Spring MVC_第5张图片
一文搞懂Spring MVC_第6张图片

一文搞懂Spring MVC_第7张图片

配置2

一文搞懂Spring MVC_第8张图片

其它配置

四、注解的解释

一文搞懂Spring MVC_第9张图片

五、web.xml文件加载过程

context-param>> listener >> fileter >> servlet(同类多个节点以出现顺序依次加载)

一文搞懂Spring MVC_第10张图片

而spring mvc启动过程大致分为两个过程:
ContextLoaderListener初始化,实例化IoC容器,并将此容器实例注册到ServletContext中。

DispatcherServlet初始化。

一文搞懂Spring MVC_第11张图片
其中ContextLoaderListener监听器它实现了ServletContextListener这个接口,在web.xml配置这个监听器,启动容器时,就会默认执行它实现的方法。在ContextLoaderListener中关联了ContextLoader这个类,所以整个加载配置过程由ContextLoader来完成。
ContextLoaderListener在web.xml中的配置

一文搞懂Spring MVC_第12张图片
ServletContextListener 接口有两个方法:contextInitialized,contextDestroyed。

六、DispatcherServlet

https://my.oschina.net/u/3080373/blog/1438733

七、spring mvc 框架各个层的关系

core,service,controller,model,support层的关系

一文搞懂Spring MVC_第13张图片

部分图片来源于网络,如侵权,请联系我删除!

你可能感兴趣的:(Java)