微码:Spring AOP 切面中获取包名和类名的方法
本文发布于 2024年07月31日,阅读 21 次,点赞
0 次,归类于
微码
在切面中获取到被切入的类名和包名的方法:
package top.emanjusaka.aop;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
/**
* @Author emanjusaka
* @Date 2024/7/31 15:07
* @Version 1.0
*/
@Aspect
@Component
public class TestAspect {
// 定义切入点
@Pointcut("execution(* top.emanjusaka.aop.*.*(..))")
public void testCut() {
}
@Around("testCut()")
public Object doGetPackageName(ProceedingJoinPoint joinPoint) throws Throwable {
MethodSignature signature = (MethodSignature) joinPoint.getSignature();
Class<?> targetClass = signature.getDeclaringType();
System.out.println("类名:" + targetClass.getSimpleName());
System.out.println("包名:" + targetClass.getPackage().getName());
System.out.println("包名 + 类名:" + targetClass.getName());
return joinPoint.proceed();
}
}
在技术的星河中遨游,我们互为引路星辰,共同追逐成长的光芒。愿本文的洞见能触动您的思绪,若有所共鸣,请以点赞之手,轻抚赞同的弦。
原文地址: https://www.emanjusaka.top/2024/07/spring-aop-package-name
微信公众号:emanjusaka的编程栈