Spring AOP面向切面编程,可以用来配置事务、做日志、权限验证、在用户请求时做一些处理等等。用@Aspect做一个切面,就可以直接实现。

·   本例演示一个基于@Aspect的小demo

  1、新建一个Maven工程

  2、引入相关maven依赖

【Spring】基于@Aspect的AOP配置
 1 <project xmlns="http://maven.apache.org/POM/4.0.0"
 2     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5     <groupId>com.test</groupId>
 6     <artifactId>test-spring-aop</artifactId>
 7     <version>0.0.1-SNAPSHOT</version>
 8 
 9     <!-- 定义maven变量 -->
10     <properties>
11         <!-- spring -->
12         <spring.version>5.1.4.RELEASE</spring.version>
13     </properties>
14 
15     <dependencies>
16         <!-- Spring IOC 核心容器 -->
17         <dependency>
18             <groupId>org.springframework</groupId>
19             <artifactId>spring-core</artifactId>
20             <version>${spring.version}</version>
21         </dependency>
22 
23         <dependency>
24             <groupId>org.springframework</groupId>
25             <artifactId>spring-beans</artifactId>
26             <version>${spring.version}</version>
27         </dependency>
28 
29         <dependency>
30             <groupId>org.springframework</groupId>
31             <artifactId>spring-context</artifactId>
32             <version>${spring.version}</version>
33         </dependency>
34 
35         <dependency>
36             <groupId>org.springframework</groupId>
37             <artifactId>spring-expression</artifactId>
38             <version>${spring.version}</version>
39         </dependency>
40 
41         <!-- Spring AOP 切面 模块 -->
42         <dependency>
43             <groupId>org.springframework</groupId>
44             <artifactId>spring-aop</artifactId>
45             <version>${spring.version}</version>
46         </dependency>
47 
48         <dependency>
49             <groupId>org.aspectj</groupId>
50             <artifactId>aspectjrt</artifactId>
51             <version>1.9.2</version>
52         </dependency>
53         
54         <dependency>
55             <groupId>org.aspectj</groupId>
56             <artifactId>aspectjweaver</artifactId>
57             <version>1.9.2</version>
58         </dependency>
59 
60     </dependencies>
61 </project>
View Code

相关文章: