Spring AOP面向切面编程,可以用来配置事务、做日志、权限验证、在用户请求时做一些处理等等。用@Aspect做一个切面,就可以直接实现。
· 本例演示一个基于@Aspect的小demo
1、新建一个Maven工程
2、引入相关maven依赖
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>