前置增强的实现
来源:互联网 发布:我的世界pe我是僵尸js 编辑:程序博客网 时间:2024/05/21 14:08
1.创建一个接口类
public interface Waiter {
void greetTo(String name);
void serveTo(String name);
}
2.创建接口实现类
public class NaiveWaiter implements Waiter {
@Override
public void greetTo(String name) {
System.out.println("greet to "+name+"...");
}
@Override
public void serveTo(String name) {
System.out.println("serving "+name+"...");
}
}
4.实现前置增强接口
public class GreetingBeforAdvice implements MethodBeforeAdvice {
/**
* method 为目标类的方法
*
* args 为目标类的入参
*
* obj 为目标类的实例
*/
@Override
public void before(Method method, Object[] args, Object target)
throws Throwable {
String clientName = (String) args[0];
System.out.println("How are you! Mr " + clientName + ".");
// System.out.println(target.getClass().getName());
}
}
5.advisor 上场
5.advisor 上场
public class TestBeforAdvice {
public static void main(String[] args) {
Waiter target=new NaiveWaiter();
BeforeAdvice beforeAdvice=new GreetingBeforAdvice();
//spring 提供的代理工厂
ProxyFactory pf=new ProxyFactory();
//设置代理目标
pf.setTarget(target);
//为代理目标添加增强
pf.addAdvice(beforeAdvice);
//生成代理实例
Waiter waiter=(Waiter) pf.getProxy();
waiter.greetTo("John");
waiter.serveTo("Tom");
}
}
main方法运行结果:
0 0
- 前置增强的实现
- Spring AOP(1)- 前置增强 实现
- Spring-AOP 通过配置文件实现 前置增强
- 注解方式增强(实现登录日志录入数据库)(前置增强+后置增强)
- spring(四)前置增强
- Spring的aspectj的AOP操作(前置增强 后置增强 环绕)
- SpringAOP 前置、后置、环绕增强
- AspectJ 基于注解的实现前置通知
- 后置增强的实现
- springAOP前置增强、后置增强、环绕增强(编程式)
- 前置,后置,环绕,异常增强(示例)
- Spring-------- 增强(前置,后置,异常,环绕)
- spring AOP 前置增强,后置增强小Demo
- 屏幕增强的实现方法
- assert增强宏的实现
- 图像增强的算法实现
- 前置增强 ,后置增强,异常增强,环绕增强 静态代理,动态代理
- 【Android基础】-调用前置摄像头实现的‘手机镜子’
- JVMJ9VM011W error when installing ITM on Linux
- 压缩表空间
- Oracle中Hint深入理解
- VS2012只生成dll不生成lib的解决方案
- 51单片机EA=1的问题
- 前置增强的实现
- Java中的阻塞和非阻塞IO包各自的优劣思考
- unity c#读取xml
- java解析xml的几种方式哪种最好?
- 使用双线插值算法缩放位图图像
- win8、server 2012 清除winsxs文件夹
- 采样中的数据类型转换
- STL remove和remove_if
- python关于__all__的定义