Spring面试常问的问题

目录

spring作用

BeanFactory和FactoryBean的区别

Spring的钩子方法

注册bean的方式

Bean的生命周期

Spring如何解决的循环依赖

DI与Aop的执行顺序

Spring事务的传播机制与失效场景

SpringMVC的流程


spring作用

帮我们管理对象以及对象的依赖

轻量级框架 减少代码侵入松耦合

BeanFactory和FactoryBean的区别

FactoryBean 他本身就是一个bean 他可以通过getObject放发去创建bean,所以他是创建bean的一种方式

BeanFactory 是Spring的核心接口 用来管理bean的

Spring的钩子方法

1.创建实例createBeanInstance方法
2.钩子方法:MergedBeanDefinitionPostProcessor

.postProcessWergedBeanDefinition(.

3.populateBean()依赖注人

  3.1钩子方法:InstantiationAwareBeanPostProcessor,postProcessAfterInstantiation();

  3.2钩子方法:InstantiationAwareBeanPostProcessor.postProcessProperties();
4.initializeBean()初始化实例

  4.1:invokeAwareMethods ();

    4.1.1钩子方法:BeanNameAware.setBeanName();

    4.1.2钩子方法:BeanclassLoadenAware,setBeanClassLoader(;

    4.1.3钩子方法:BeanFactoryAware.setBeanFactory(;

  4.2做判断是否调用钩子方法 BeanPostProcessor.postProcessBeforeInitialization();

  4.3 :invokeInitMethods;

    4.3.1钩子方法:InitializingBean .afterPropentiesset0;

  4.4:做判断是否调用钩子方法:BeanPostProcessor.postProcessBeforeInitialization

5.Bean实例在容器中存活

6.容器销毁

  6.1Bean是否实现DisposableBean接口,有则执行钩子方法destroy();

注册bean的方式

bean的注册方式

Bean的生命周期

bean的生命周期

Spring如何解决的循环依赖

Spring三级缓存解决循环依赖

DI与Aop的执行顺序

  1. 在循环依赖的情况下Aop在前(准确的说应该是在DI的执行过程中完成了Aop)
  2. 其他情况Aop在后

Spring事务的传播机制与失效场景

Spring事务的传播机制与失效场景

SpringMVC的流程

1. 用户发送请求至前端控制器 DispatcherServlet
2.DispatcherServlet收到请求后,调用HandlerMapping 处理器映射器,请求获取 Handler
3. 处理器映射器根据请求 url 找到具体的处理器 Handler ,生成处理器对象及处理器拦截器 ( 如果有则生 成) ,一并返回给 DispatcherServlet
4.DispatcherServlet 调用 HandlerAdapter 处理器适配器,请求执行 Handler
5.HandlerAdapter 经过适配调用 具体处理器进行处理业务逻辑;
6.Handler 执行完成返回 ModelAndView
7.HandlerAdapter Handler 执行结果 ModelAndView 返回给 DispatcherServlet
8.DispatcherServlet ModelAndView 传给 ViewResolver 视图解析器进行解析;
9.ViewResolver 解析后返回具体 View
10.DispatcherServlet View 进行渲染视图(即将模型数据填充至视图中)
11.DispatcherServlet 响应用户。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

w7486

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值