Spring学习——IOC和AOP的理解

来源:互联网 发布:yum安装lnmp环境 编辑:程序博客网 时间:2024/06/11 22:10

IOC容器:

  1. 控制反转:将应用中的对象全部交由Spring的Bean工厂进行生成、装配与生命周期的管理;负责JavaBean的实例化,依赖关系的装配及高效的生命周期管理。
  2. 依赖注入:是指程序在运行期,由外部容器动态地将依赖对象注入到组件中。

应用本身不再负责依赖对象的创建和维护,依赖对象的创建及维护交由外部容器负责。

AOP:面向切面编程

将业务逻辑中到处重复出现的一些诸如:日志输出、事务控制及权限控制等代码全部抽取出来,具体运行时,再由Spring的AOP模块自动完成重组,使业务逻辑代码与共有功能代码完美复合。
AOP技术是建立在java语言的反射机制与动态代理机制之上。调用者直接调用的其实是aop模块动态生成的代理对象,再由代理对象调用目标对象完成原始的业务逻辑处理,而代理对象则已经将切面与业务逻辑方法进行了合成。
AOP关键词:
1. 切面Aspect:共有的功能
2. 通知Advice:切面的具体实现
3. 连接点Joinpoint:程序在运行过程中能够插入切面的地点
4. 切入点Pointcut:用于定义通知应该切入到哪些连接点上
5. 目标对象Target:即将切入切面的对象,也就是被通知的对象
6. 代理对象Proxy: 将通知应用到目标对象之后被动态创建的对象。代理对象的功能等于目标对象的核心业务逻辑功能加上共有的功能
7. 织入Weaving:将切面应用到目标对象从而创建一个新的代理对象的过程。