什么是spring框架

spring是一个开源框架,为简化企业级应用开发而生,使用基本的JavaBean来完成以前只能由EJB完成的事情。
spring的用途不仅限于服务器端的开发,从简单性,可测试性,以及松耦合的角度而言,任何Java应用都可以从spring中受益。
spring的核心是控制反转IOC和面向切面编程AOP,所以我们一般把spring框架称作IOC和AOP框架。

控制反转(IOC):传统的Java开发模式中,当需要一个对象时,我们会使用new或者getInstant等直接或者间接调用构造方法创建一个对象,而在spring开发模式中,spring容器使用了工厂模式为我们创建了所需要的对象,不需要我们自己创建了,直接调用spring提供的对象就行了,这就是控制反转的思想。
依赖注入(DI):spring使用JavaBean对象的set方法或者带参数的构造方法为我们在创建所需对象时将所需时将其属性自动设置所需要的值得过程,这就是依赖注入的思想。

面向切面编程(AOP):在面向对象编程思想中,我们将事物纵向抽成一个个的对象,而在面向切面编程中,我们将一个个的对象某些类似的方面横向抽成一个切面,对这个切面进行一个如权限控制,事物管理,记录日志等公用操作处理的过程就是面向切面编程的思想。AOP底层应用的是Java反射机制实现的,也就是动态代理,如果是接口采用JDK动态代理,如果是类采用的是CGLIB方法实现动态代理。

猜你喜欢

转载自blog.csdn.net/caiyibing1992/article/details/82780709