AOP 各种的实现
AOP就是面向切面编程,我们可以从几个层来实现AOP
编译期---------字节码加载前---------字节码加载后
在编译器修改源代码,在运行期字节码加载前修改字节码或字节码加载后动态创建代理类的字节码,以下是各种实现机制的比较。
类别
机制
原理
优点
缺点
静态AOP
...
分类:
编程语言 时间:
2014-06-20 10:56:25
阅读次数:
170
为另一个对象提供一个替身或占位符以控制对这个对象的访问。
代理模式的组成:
主题接口(Subject):目的是提取真正主题与代理的公共属性,让使用真正主题的地方也能用代理代替。
真正主题(RealSubject):真正发送请求的类。
代理(Proxy):请求方与真正主题的代理类,请求方通过调用代理对象间接调用真正主题。
代理模式的简单例子:
Subject.java
package...
分类:
其他好文 时间:
2014-06-16 19:56:32
阅读次数:
195
引入cglib-nodep-2.1_3.ja包cglib产生的代理类是目标类的子类定义接口,让切面都继承它,方便加入到动态代理方法
的那个类中使用在SalaryInterceptor类中使用private List interceptors;1 package
cn.itcast.cglibprox...
分类:
其他好文 时间:
2014-06-16 08:20:10
阅读次数:
216
JAVA的动态代理代理模式代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通...
分类:
编程语言 时间:
2014-06-15 21:06:26
阅读次数:
178
服务契约的方法重载,会在装载宿主时,抛出异常.解决是在操作契约上Name设置为不同值,但是生成的代理会把Name的名称作为方法的名称,不过我们可以手动的修改代理类,使得方法名与服务声明的名称一样.契约的继承:
服务契约是不可继承的. 客户端在导入服务契约时,会取消服务契约的继承层级,并利用Opera...
分类:
其他好文 时间:
2014-06-12 21:44:29
阅读次数:
357
1.代码设计思路:一个总接口:规范策略执行方法一个代理类:将接口作为类的私有化变量,初始化构造多个普通接口实现类:具体实现策略方法一个方法执行类:将代理类通过构造函数初始化实现类,实现方法的执行2.模式优点:高内聚低耦合3.利用面向接口编程的思想
通过对接口的操纵 事实上实现了对实现类的具体业务执行...
分类:
其他好文 时间:
2014-06-11 10:28:34
阅读次数:
283
代理模式:为其他对象提供一种代理以控制对这个对象的访问简单描述:1个父类A(或者接口),1个具体执行动作的子类,1个代理类,代理类持有具体子类的引用,在方法中调用具体子类的对象方法。客户端只与代理类交互大话设计模式中的截图:例子代码:Subject类:
1 package com.longsheng...
分类:
编程语言 时间:
2014-06-11 09:12:14
阅读次数:
320
概念
代理模式(Proxy),为其他对象提供一种代理以控制对象的访问。模式结构一个是真正的你要访问的对象(目标类),一个是代理对象,真正对象与代理对象实现同一个接口,先访问代理类再访问真正要访问的对象。代理模式UML图代码实战
//代理模式classProxy:IGiveGift//让...
分类:
其他好文 时间:
2014-06-08 19:03:48
阅读次数:
238
代理: 要为已经存在的多个具有相同接口的目标类的各个方法增加一些系统功能。
例如:异常处理,日志和计算方法的运行时间,事物管理等,怎么做 如 在运行前后增加计算时间的方法。show(){ sop(); }
编写一个与目标类具有相同接口的代理类,代理类的每个方法调用目标类的相同方法,并在调用方法时加上...
分类:
其他好文 时间:
2014-06-07 16:58:57
阅读次数:
273
动态代理技术的深入讲解;分析代理类的作用与原理及AOP概念 ;创建动态类的实例对象及调用其方法 ;总结分析动态代理类的设计原理与结构 ;实现类似spring的可配置的AOP框架...
分类:
其他好文 时间:
2014-06-03 05:53:44
阅读次数:
338