maven添加依赖
<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> <version>1.8.9</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.8.9</version> </dependency> @Aspect @Component public class ControllerAspect { private static Logger logger = Logger.getLogger(ControllerAspect.class); @Pointcut("execution(* com.security.admin.controller..*.*(..))") private void controllerMethod() { } /** * 可以在执行方法之前和之后改变参数和返回值 * @param joinPoint用于获取目标方法相关信息的参数 * @return 最终的返回值 * @throws Throwable */ @Around("controllerMethod()") public Object processTx(ProceedingJoinPoint joinPoint) throws Throwable { System.out.println("Around增强:执行方法之前,模拟开始事物"); Signature signature = joinPoint.getSignature(); MethodSignature methodSignature = (MethodSignature) signature; Object rvt = joinPoint.proceed(); String response = (String) (methodSignature.getReturnType().newInstance()); System.out.println("Around增强:执行方法之后,模拟结束事物"); logger.info("----------------" + response); return rvt; } }