Aop(Aspect Oriented Programming),面向切面编程,这是对面向对象思想的一种补充。
面向切面编程,就是在程序运行时,不改变程序源码的情况下,动态的增强方法的功能,常见的使用场景非常多:1.日志 2.事务 3.数据库操作
这些操作中,无一例外,都有很多模板化的代码,而解决模板化代码,消除臃肿就是Aop的强项。
在Aop中,有几个常见的概念:
Aop实际上基于Java动态代理来实现的。
Java中的动态代理有两种实现方式:cglib和jdk
基于JDK的动态代理。
1.定义一个计算器接口:
2定义计算机接口的实现:
3.定义代理类
Proxy.newProxylnstance方法接收三个参数,第一个是一个classloader,.第二个是代理多项实现的接口,第三个是代理对象方法的处理器,所有要额外添加的行为都在invoke方法中实现。
Spring中的Aop的通知类型有5种:前置通知、后置通知、异常通知、返回通知、环绕通知
标签:毕设,通知,3.13,代理,接口,Aop,动态 From: https://www.cnblogs.com/zhiqi2625/p/18077527