当前位置:首页 > 开发语言 > 正文

spring执行流程图(spring项目启动执行方法)

spring执行流程图(spring项目启动执行方法)

老铁们,大家好,相信还有很多朋友对于spring执行流程图和spring项目启动执行方法的相关问题不太懂,没关系,今天就由我来为大家分享分享spring执行流程图以及s...

老铁们,大家好,相信还有很多朋友对于spring执行流程图和spring项目启动执行方法的相关问题不太懂,没关系,今天就由我来为大家分享分享spring执行流程图以及spring项目启动执行方法的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

spring filter请求流程

Filter的原理

JavaServletAPI中提供了Filter接口,编写Filter的实现类,从而实现自定义过滤器。Filter的请求流程为:

1.客户端发起请求

2.服务容器判断当前请求资源是否有过滤器,有则执行过滤器

3.过滤器过滤通过后请求到Servlet服务器

4.返回结果通过过滤器返回给请求方

spring启动流程

spring的启动是建筑在servlet容器之上的,所有web工程的初始位置就是web.xml,它配置了servlet的上下文(context)和监听器(Listener),

下面就来看看web.xml里面的配置:

spring的上下文监听器

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>/WEB-INF/spring/application_context.xml</param-value>

</context-param>

<listener>

<listener-class>

org.springframework.web.context.ContextLoaderListener

</listener-class>

</listener>

spring的启动其实就是IOC容器的启动过程,通过上述的第一段配置<context-param>是初始化上下文,然后通过后一段的的<listener>来加载配置文件,其中调用的spring包中的ContextLoaderListener这个上下文监听器,ContextLoaderListener是一个实现了ServletContextListener接口的监听器,他的父类是ContextLoader,在启动项目时会触发contextInitialized上下文初始化方法。

springmvc 多步流程

工作流程(12步)

1.DispatcherServlet(前端控制器)接收用户的请求;

2.DispatcherServlet调用HandlerMapping(处理器映射器),找到合适的Handler;

3.HandlerMapping(处理器映射器)返回HandlerExecutionChain(合适的Handler的位置)给DispatcherServlet;

4.发送请求到HandlerAdapter(处理器适配器)(打一个比方:家用电的电压为220V,我们的电脑或手机所需要的电压各不相同,所以就需要有电源适配器来起到桥梁作用,这里的处理器适配器也是同样的作用);

5.HandlerAdapter(处理器适配器)将请求交给Handler(处理器)去执行;

6.Handler(处理器)执行请求,并将处理后的结果封装成为一个ModelAndView对象,返回给HandlerAdapter(处理器适配器);

7.HandlerAdapter(处理器适配器)将ModelAndView对象返回给DispatcherServlet;

8.DispatcherServlet调用InternalResourceViewResolver(视图解析器)请求视图解析;

9.InternalResourceViewResolver(视图解析器)解析视图后返回给DispatcherServlet;

10.DispatcherServlet请求渲染视图;

11.View(视图)将渲染好的视图返回给DispatcherServlet;

12.DispatcherServlet响应用户的请求。

spring加载流程

初始化环境—>加载配置文件—>实例化Bean—>调用Bean显示信息

springmvc的工作流程是什么

spring工作的流程

流程如下:

1、用户发起请求到前端控制器(DispatcherServlet),该控制器会过滤出哪些请求可以访问Servlet、哪些不能访问。就是url-pattern的作用,并且会加载springmvc.xml配置文件。

2、前端控制器会找到处理器映射器(HandlerMapping),通过HandlerMapping完成url到controller映射的组件,简单来说,就是将在springmvc.xml中配置的或者注解的url与对应的处理类找到并进行存储,用map<url,handler>这样的方式来存储。

3、HandlerMapping有了映射关系,并且找到url对应的处理器,HandlerMapping就会将其处理器(Handler)返回,在返回前,会加上很多拦截器。

4、DispatcherServlet拿到Handler后,找到HandlerAdapter(处理器适配器),通过它来访问处理器,并执行处理器。

5、执行处理器

6、处理器会返回一个ModelAndView对象给HandlerAdapter

7、通过HandlerAdapter将ModelAndView对象返回给前端控制器(DispatcherServlet)

8、前端控制器请求视图解析器(ViewResolver)去进行视图解析,根据逻辑视图名解析成真正的视图(jsp),其实就是将ModelAndView对象中存放视图的名称进行查找,找到对应的页面形成视图对象

9、返回视图对象到前端控制器。

10、视图渲染,就是将ModelAndView对象中的数据放到request域中,用来让页面加载数据的。

11、通过第8步,通过名称找到了对应的页面,通过第10步,request域中有了所需要的数据,那么就能够进行视图渲染了。最后将其返回即可。

好了,关于spring执行流程图和spring项目启动执行方法的问题到这里结束啦,希望可以解决您的问题哈!

最新文章