您的位置:首页 > 编程语言 > ASP

基于Spring的AspectJ对AOP的实现

2018-03-16 08:59 477 查看

一、基本概念:

AspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。切入点表达式(用于指定切入点):execution(),里面包含:访问权限、返回值类型、权限定性类名(接口名)、方法名、抛出异常、参数列表。其中返回值类型、方法名必须要有。

二、环境搭建:

1、导包:Spring与AspectJ整合的Jar包
AspectJ的核心Jar包
AOP联盟的Jar包
Spring对AOP实现J的ar包
以及Spring基础包
2、为配置文件添加约束:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop.xsd"><!-- bean definitions here -->

三、基于注解的AspectJ:

首先在类名前添加@Aspect标签,告诉系统这个类是个切面类。

切面注解1、前置通知:

前置通知

任何通知都可以JoinPoint获取连接点参数。2、后置通知:



后置通知可以获取执行结果,但不能该结果。3、环绕通知:

4、异常通知:



如果是自定义异常对象,我们将对象名把Exception替换就行,可以有多个存在。5、最终通知:最终通知就是无论有无异常都会执行。

6、定义切入点:定义切入点是为了解决代码冗余问题。

7、配置文件:

8、测试类:

9、执行结果:

四、基于XML的AspectJ:

其他不变,我们只将切面类的全部注解删掉。

配置

结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring