<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
@Aspect // 定义这个类为切面
@Component // 让这个类随着spring项目的启动而注入被自动识别
public class UserAspect {
// 定义切点
@Pointcut("execution(* *com.example.springaoptest1.userController.UserController.*(..))") // 定义切点
public void pc(){};
@Before("pc()")
public void doBefore() {
System.out.println("执行前置通知");
}
@Around("pc()")
public Object doAroud(ProceedingJoinPoint joinPoint) {
System.out.println("环绕通知开始执行");
Object ret;
try {
ret = joinPoint.proceed();
} catch (Throwable e) {
throw new RuntimeException(e);
}
System.out.println("环绕通知执行之后");
return ret;
}
}
@RestController
@RequestMapping("/user")
public class UserController {
@RequestMapping("/getUser")
public String getUser() {
System.out.println("do getUser!");
return "user";
}
@RequestMapping("/delUser")
public String delUser() {
System.out.println("do delUser!");
return "del user";
}
}
原文地址:https://blog.csdn.net/niceffking/article/details/134742241
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_20826.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!