spring常见的面试题

1、什么是Spring框架?Spring框架有哪些主要模块?

spring框架是为java服务的综合性框架,spring为开发者解决基础的开发问题,不用去关心底层到底是怎么实现的,专注与系统开发的逻辑实现。
spring现在至少有20多种模块,有面向切面,核心容器,数据访问、继承,web,工具,消息,测试等等

2、使用Spring框架能带来哪些好处?

1 使用Spring构建的应用程序易于单元测试;
2:可以很好的整合其他框架
3:MVC Web框架,提供一种清晰,无侵略性的MVC实现方式。
4:在Spring应用中的大多数业务对象没有依赖于Spring
5:Spring能够帮助我们真正意义上实现针对接口编程。
6:降低了组件之间的耦合性 ,实现了软件各层之间的解耦
7:容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能
8:Spring能有效地组织你的中间层对象

什么是控制反转(IOC)?什么是依赖注入?

告诉spring你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转

通过DI(Dependency Injection,依赖注入)来实现的。比如对象A需要操作数据库,以前我们总是要在A中自己编写代码来获得一个Connection对象,有了 spring我们就只需要告诉spring,A中需要一个Connection,至于这个Connection怎么构造,何时构造,A不需要知道。在系统运行时,spring会在适当的时候制造一个Connection,然后像打针一样,注射到A当中,这样就完成了对各个对象之间关系的控制。A需要依赖 Connection才能正常运行,而这个Connection是由spring注入到A中的,依赖注入的名字就这么来的。

你可能感兴趣的:(SSH,面试)