springboot三层调用关系?

网友投稿 177 2024-01-10


springboot随笔5.0:run方法执行流程

SpringApplicationRunListener,对ApplicationContext的运行各个时期的事件进行广播,时事件能够被ApplicationListener所监听到。

执行核心run方法初始化initialize方法执行完之后,会调用run方法,开始启动SpringBoot。

当启动一个SpringBoot项目时,本质上就是执行了地洞累中的主方法,然后执行了run方法。

SpringBoot启动原理分析

springboot启动流程如下:启动流程主要分为三个部分,第一部分进行、SpringApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器,第二部分实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块。

配置 spring.factories ,通过该配置,才能让springboot来自动加载我们的Configuration类。具体原理我们稍后深入了解。具体的,是在模块的 resources/META-INF 目录下,新建 spring.factories 文件。

首先用FactoryBean的模式实现了一个ProxyBean,如果想了解FactoryBean 的用法,这是个典型的例子。但是这个FactoryBean 是以api 行为直接调用的,并没有注册到Spring 的context 中。

springBoot的启动可以分为两个部分,第一部分:SpringApplication的实例化;第二部分:调用该实例运行run方法(springboot初始化)。

Springboot的Filter,HandlerInterceptor,Aspect与异常处理

1、答案是Filter,HandlerInterceptor,Aspect都有可能拦截,下面简单分析一下它们几个。

2、切片Aspect,既然Spring那么支持AOP,可以拿到原始的HTTP请求和响应的信息, 也可以拿到你真正处理请求方法的信息,也可以传进参数的那个值。实现Filter接口 实现 HandlerInterceptor 接口,然后配置进Spring。

3、FirstFilter:在完成Filter的创建后,还需要将Filter注册到Web容器(添加到Filter chain)才能对request/response进行过滤。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:spring安装配置(如何安装spring)
下一篇:springboot框架属于javaweb吗?
相关文章

 发表评论

暂时没有评论,来抢沙发吧~