什么是spring的ioc aop

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是spring的ioc aop相关的知识,希望对你有一定的参考价值。

ioc和aop是spring两个重要的核心,ioc是应用容器的依赖注入,最明显的优势在于你用spring可以应用它提供的注解来注入。aop是面向切面编程,可以用它来做如日志拦截等的功能,使得代码更容易管理,耦合性降低。 参考技术A 既然你问IOC 你就一定知道Spring.
Sring中所有的Bean对象管理都依赖于DI/IOC,
Spring作为一个Web级容器,它把所有的Class类都可以转换为一个Bean对象来管理,通过加载、实例这个Bean对象,将它全部交给BeanFactory来管理,在你通过applicationContext.xml来使用和对其他Bean注入的这个过程,可以理解为IOC,使用IOC可以降低项目的耦合度,实现类与类之间的无依赖性。
AOP是面向切面编程,可以在项目中指定的位置执行指定的操作,例如事务管理,可以在所有非Query的方法执行后都执行一次事务提交的操作。不需要修改代码,通过Xml配置 就可以完成这个操作。本回答被提问者和网友采纳
参考技术B

IOC(Inversion of Control)

ioc控制反转,又称为“依赖注入”;

IOC的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。   

其原理是基于OO设计原则的The Hollywood Principle:Don't call us, we'll call you(别找我,我会来找你的)。也就是说,所有的组件都是被动的(Passive),所有的组件初始化和调用都由容器负责。组件处在一个容器当中,由容 器负责管理。   

简单的来讲,就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在:控制权由应用代码中转到了外部容器,控制权的转移,是所谓反转。

AOP 面向切面编程

核心原理:使用动态代理的设计模式在执行方法前后或出现异常常做加入相关逻辑

我们使用AOP来做:

1)事务处理:执行方法前开启事务,执行完成后关闭事务,出现异常后回滚事务

2)权限判断:在执行方法前,判断是否具有权限

3)日志:在执行前进行日志处理


更多Spring框架的知识可以观看视频哦:Spring框架入门到精通

以上是关于什么是spring的ioc aop的主要内容,如果未能解决你的问题,请参考以下文章

自学Spring框架的几个基本概念

源码学习之AOPSpring AOP使用

Spring常用的jar+普通构造注入

spring-bean

框架 - Spring 源码一步步深入

Springday03 AOPSpring声明式事务Spring编程式事务