IOC
:
控制反转
也叫
依赖注入
。将原本由我们自己管理的对象交由web容器去管理。利用了
工厂模式
将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter方法来注入,而不需要你在A里面new这些bean了。
AOP:面向切面编程。(Aspect-Oriented Programming) AOP可以说是对OOP的补充和完善 。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。在OOP设计中,它导致了大量代码的重复,而不利 于各个模块的重用。
将程序中的交叉 业务逻辑(比如安全,日志,事务 等),封装成一个切 面,然后注 入到目标对象(具体业务 逻辑)中去。
实现AOP的技术,主要分为两大类 :一是 采用动态代理技 术 ,利用截取消息的方式 ,对该消息进行装饰,以 取 代原有对象行为的执行 ;二是采用静态织入 的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码
简单点解释,比方说你想在你的 biz 层所有类中都加上一个打印 ‘你好’的功能这你经可以用aop思想来做,你先写个类写个方法,方法经实现打印‘你好’让后你Ioc这个类 ref=“ biz .*”让每个类都注入。
AOP:面向切面编程。(Aspect-Oriented Programming) AOP可以说是对OOP的补充和完善 。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。在OOP设计中,它导致了大量代码的重复,而不利 于各个模块的重用。
将程序中的交叉 业务逻辑(比如安全,日志,事务 等),封装成一个切 面,然后注 入到目标对象(具体业务 逻辑)中去。
实现AOP的技术,主要分为两大类 :一是 采用动态代理技 术 ,利用截取消息的方式 ,对该消息进行装饰,以 取 代原有对象行为的执行 ;二是采用静态织入 的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码
简单点解释,比方说你想在你的 biz 层所有类中都加上一个打印 ‘你好’的功能这你经可以用aop思想来做,你先写个类写个方法,方法经实现打印‘你好’让后你Ioc这个类 ref=“ biz .*”让每个类都注入。