spring boot aop其中pom.xml文件
首先新建一个maven项目,在项目的pom.xml中添加spring aop相关的依赖项:
如下是完整的pom.xml:
4.0.0
<groupId>cn.outofmemory</groupId>
<artifactId>spring-aop-aspect</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>spring-aop-aspect</name>
<url>http://maven.apache.org</url>
<properties>
<spring.version>3.1.1.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.6.12</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.6.12</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2</version>
</dependency>
</dependencies></project>
[email protected]是创建切入点
切入点方法不用写代码,返回类型为void
execution:用于匹配表达式
execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern)throws-pattern?)
修饰符匹配(modifier-pattern?)
返回值匹配(ret-type-pattern)可以为表示任何返回值,全路径的类名等
类路径匹配(declaring-type-pattern?)
方法名匹配(name-pattern)可以指定方法名 或者 代表所有, set 代表以set开头的所有方法
参数匹配((param-pattern))可以指定具体的参数类型,多个参数间用“,”隔开,各个参数也可以用“”来表示匹配任意类型的参数,如(String)表示匹配一个String参数的方法;(,String) 表示匹配有两个参数的方法,第一个参数可以是任意类型,而第二个参数是String类型;可以用(…)表示零个或多个任意参数
异常类型匹配(throws-pattern?) 其中后面跟 着“?”的是可选项
1)execution( (…))
//表示匹配所有方法
2)execution(public * com. example.controller.(…))
//表示匹配com. example.controller中所有的public方法
3)execution(* com. example.controller….(…))
//表示匹配com. example.controller包及其子包下的所有方法
2.JoinPoint
除@Around外,每个方法里都可以加或者不加参数JoinPoint。JoinPoint包含了类名、被切面的方法名、参数等属性。@Around参数必须为ProceedingJoinPoint。
推荐阅读
-
Spring Boot配置AOP打印日志的全过程
-
使用Spring boot + jQuery上传文件(kotlin)功能实例详解
-
Spring Boot Maven 打包可执行Jar文件的实现方法
-
详解spring boot starter redis配置文件
-
spring boot 使用Aop通知打印控制器请求报文和返回报文问题
-
spring boot 打jar包,获取resource路径下的文件
-
spring boot启动时加载外部配置文件的方法
-
Spring Boot使用AOP防止重复提交的方法示例
-
spring boot静态变量注入配置文件详解
-
Spring Boot 配置文件详解(小结)