谈谈你对Spring的理解
Spring是什么
Spring是一个开源框架,为简化企业级开发而生,Spring可以是使简单的JavaBean实现以前只有EJB才能实现的功能,Spring是一个IOC和AOP容器框架
Spring容器的主要核心是:
控制反转(IOC):
传统的java开发模式中,当需要一个对象时,我们会自己使用new直接或间接的调用构造方法来创建一个对象,而在Spring开发模式中,spring容器使用了工厂模式为我们创建了所需要的对象,直接调用spring提供的对象就可以了,这就是控制反转的思想
依赖注入(DI):
spring使用javabean对象的set方法或者带参的构造方法为我们在创建所需对象时将其属性自动设置所需要的值得过程,这就是依赖注入的思想
面向切面编程(AOP):
在面向对象编程(oop)思想中,我们将事物纵向抽成一个个的对象,而在面向切面编程中,我们将一个个的对象某些类似的方面横向抽成一个切面,对这些切面进行一些如权限控制,事物管理,记录日志,等公用操作的过程就是面向切面编程的思想,AOP底层是动态代理,