Spring学习总结之面向切面(AOP)
2017-04-11 10:12
573 查看
AOP术语
通知(advice):定义切面是什么以及什么时候使用
连接点(join point):应用在执行过程中能够插入切面的点
切点(pointcut):切点的定义会匹配通知所要织入的一个或多个连接点
切面(aspect):通知和切点的结合
引入(introduction):允许我们向现有的类添加新方法或属性
织入(weaving):把切面应用到目标对象并创建新的代理对象的过程
Spring使用AspectJ注解来声明通知方法
@After:通知方法会在目标方法返回或抛出异常后调用
@AfterReturning:通知方法会在目标方法返回后调用
@AfterThrowing:通知方法会在目标方法抛出异常后调用
@Around:通知方法会将目标方法封装起来
@Before:通知方法会在目标方法调用之前执行
注解使用在切面方法之前,比如:
@Before(“execution(xxx)”)
public void sayHello() {}
此时表示,在xxx方法执行之前,执行切面方法sayHello
pointcut配置如下:
@Pointcut(“execution(* xxxx)”)
public void xxMethod() {}
@Before(“xxMethod()”)
作用:不用每次都写execution,简化了代码,xxMethod只是一个空方法
使用XML文件配置
aspectClass表示切面类的bean ID,xxMethod表示用在切面上的方法(通知)
通知(advice):定义切面是什么以及什么时候使用
连接点(join point):应用在执行过程中能够插入切面的点
切点(pointcut):切点的定义会匹配通知所要织入的一个或多个连接点
切面(aspect):通知和切点的结合
引入(introduction):允许我们向现有的类添加新方法或属性
织入(weaving):把切面应用到目标对象并创建新的代理对象的过程
Spring使用AspectJ注解来声明通知方法
@After:通知方法会在目标方法返回或抛出异常后调用
@AfterReturning:通知方法会在目标方法返回后调用
@AfterThrowing:通知方法会在目标方法抛出异常后调用
@Around:通知方法会将目标方法封装起来
@Before:通知方法会在目标方法调用之前执行
注解使用在切面方法之前,比如:
@Before(“execution(xxx)”)
public void sayHello() {}
此时表示,在xxx方法执行之前,执行切面方法sayHello
pointcut配置如下:
@Pointcut(“execution(* xxxx)”)
public void xxMethod() {}
@Before(“xxMethod()”)
作用:不用每次都写execution,简化了代码,xxMethod只是一个空方法
使用XML文件配置
<aop:config> <aop:aspect ref="aspectClass"> <aop:pointcut id="p_name" expression="execution(xxx)" /> <aop:before pointcut-ref="p_name" method="xxMethod" /> </aop:aspect> </aop:config>
aspectClass表示切面类的bean ID,xxMethod表示用在切面上的方法(通知)
相关文章推荐
- Spring学习一:IOC(控制反转)和AOP(面向切面)的xml配置和注解方式
- Spring学习4-面向切面(AOP)之aspectj注解方式
- Spring学习,依赖注入(DI)、控制反转(IoC)和面向切面(AOP)
- Spring3.0 学习-AOP面向切面编程_Spring AOP的注解模式即Aspectj模式
- Spring概念学习--面向切面AOP
- spring学习总结二-----面向切面编程(AOP)思想
- 重新学习之spring第二个程序,配置AOP面向切面编程
- Spring学习4-面向切面(AOP)之Spring接口方式
- Spring学习4-面向切面(AOP)之aspectj注解方式
- Jimoshi_Spring 框架学习(二)--AOP(面向切面)、AOP管理事务
- Spring学习笔记3--面向切面(AOP)的例子
- Spring学习4-面向切面(AOP)之schema配置方式
- Spring学习笔记(三)--面向切面编程AoP
- [Spring]面向切面编程AOP【学习笔记】
- spring学习笔记7--使用spring进行面向切面的(AOP)编程(1)注解方式实现
- spring学习--面向切面编程AOP和AspectJ
- Spring学习笔记:面向切面(AOP)的基本定义
- Spring3.0 学习-AOP面向切面编程_Spring AOP的XML配置模式
- Spring学习4-面向切面(AOP)之Spring接口方式
- Spring学习4-面向切面(AOP)之Spring接口方式