Java面试总结 --- Spring相关

1、spring核心原理是什么?DI、IOC、AOP?   

  • Spring的工作原理:就是让一个对象的创建不用new就可以自动的生产,在运行时与xml Spring的配置文件来动态的创建对象和调用对象,而不需要通过代码来关联

  • Spring内部最核心的就是IOC(控制反转),别名 DI (动态注入),让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射,反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml Spring的配置文件来动态的创建对象和调用对象里的方法的 。

  • pring还有一个核心就是AOP面向切面编程,可以为某一类对象进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的模块)从而达到对一个模块扩充的功能。这些都是通过配置类达到的。

  • Spring目地就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明管理的

  • IOC  所谓 IOC,由第三方来负责控制对象的生命周期和对象间的关系。

  • DI    IOC 的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。

2、Spring容器的生命周期是什么?   

  • 创建 Spring 容器   
  • 容器初始化(执行Bean的构造器,属性注入等)
  • 程序执行,业务逻辑调用  
  • 销毁容器

3、Spring MVC的流程原理是什么?   

  •  用户发送请求至前端控制器DispatcherServlet。
  •   DispatcherServlet收到请求调用HandlerMapping处理器映射器。
  •   处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处  理器拦截器(如果有则生成)一并返回给DispatcherServlet。
  •   DispatcherServlet调用HandlerAdapter处理器适配器。
  •   HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。
  •   Controller执行完成返回ModelAndView。
  •   HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。
  •   DispatcherServlet将ModelAndView传给ViewReslover视图解析器。
  •   ViewReslover解析后返回具体View。
  • DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。
  •  DispatcherServlet响应用户。

猜你喜欢

转载自blog.csdn.net/ddwangbin520/article/details/131231931