控制反转(ioc)和 面向切面(AOP)

Posted wangdx1107

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了控制反转(ioc)和 面向切面(AOP)相关的知识,希望对你有一定的参考价值。

1. IOC(Inversion of control)不是技术,是一种编程思想。ioc意味着将设计好的对象交给容器控制,而不是传统的在对象内部直接控制。

2. IOC(控制反转)  ‘谁控制了谁 控制什么 为什么是反转 那些方面反转了’

        谁控制谁:IOC容器控制了对象

        控制什么:控制了外部资源获取

        为什么是反转:IOC容器帮助查找及注入依赖对象,对象只是被动的接受依赖对象

        那些方面反转:依赖对象获取被反转

DI(依赖注入):“谁依赖谁 为什么需要依赖 谁注入谁 注入了什么”

        谁依赖谁:应用程序依赖于ioc容器

        为什么需要依赖:应用程序需要ioc容器来提供对象需要的外部资源

        谁注入谁:Ioc容器注入应用程序某个对象,应用程序依赖的对象

        注入了什么:注入某个对象所需要的外部资源

3. AOP(面向切面):AOP是一种编程思想,在java中利用反射机制实现

    事先只需要考虑主流程,不需要考虑哪些不重要的流程。

    AOP不会把代码加到源文件中,但是它最终会正确的影响机器代码

以上是关于控制反转(ioc)和 面向切面(AOP)的主要内容,如果未能解决你的问题,请参考以下文章

Spring核心思想:IOC(控制反转)DI(依赖注入)和AOP(面向切面编程)

spring的依赖注入(DI)控制反转(IOC)和面向切面(AOP)

Spring 之 控制反转(IoC), 依赖注入(DI)和面向切面(AOP)

Spring的AOP面向切面原理,IOC控制反转也叫DI依赖注入原理

IOC/DI-控制反转----AOP-面向切面编程

Spring基础IOC(控制反转)AOP(面向切面编程)Log4j注解配置