Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext

IoC,DI,AOP思想

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第1张图片
IOC就是控制反转,是指创建对象的控制权的转移。以前创建对象的主动权和时机是由自己把控的,而现在这种权力转移到Spring容器中,并由容器根据配置文件去创建实例和管理各个实例之间的依赖关系。对象与对象之间松散耦合,也利于功能的复用。

DI依赖注入,和控制反转是同一个概念的不同角度的描述,即 应用程序在运行时依赖IoC容器来动态注入对象需要的外部资源。
IOC有三种注入方式 :构造器注入、setter方法注入、根据注解注入。

AOP(面向切面编程)能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可扩展性和可维护性。
Spring AOP是基于动态代理的,如果要代理的对象实现了某个接口,那么Spring AOP就会使用JDK
动态代理去创建代理对象;而对于没有实现接口的对象,就无法使用JDK动态代理,转而使用CGlib
动态代理生成一个被代理对象的子类来作为代理。

框架

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第2张图片

Java常用框架

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第3张图片

Spring框架

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第4张图片
Spring框架结构
Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第5张图片

BeanFactory用法

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第6张图片

ApplicationContext用法

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第7张图片

BeanFactory和ApplicationContext的区别

Spring面试题:(一)IoC,DI,AOP和BeanFactory,ApplicationContext_第8张图片

你可能感兴趣的:(spring,java,后端)