Spring是一个开源框架,为简化企业级应用开发而生。
Spring框架的核心:
控制反转(IOC):在传统的java开发模式中,需要一个对象时,我们使用new或getInstance()方法直接或间接调用构造方法创建对象,但在Spring开发模式中,Spring容器使用了工厂模式创建所需要的对象,不需要自己创建对象,直接使用Spring容器提供的对象即可。
依赖注入(DI):使用javabean对象的set方法或带参数构造方法,在创建对象时将其属性自动设置为所需值得过程,就是依赖注入的方法。
面向切面编程(AOP):在面向对象编程(OOP)中,将事务抽象为一个个的对象,在面向切面编程中,我们将多个对象中类似的方面抽象为切面,对这些切面进行一些如权限管理、事务管理等公用操作处理的过程就是面向切面编程的思想。AOP的底层是基于动态代理实现的,如果是接口就使用JDK动态代理,如果是类就使用CGLIB方式实现动态代理。