SpringAOP配置声明式切面时报错error at ::0 formal unbound in pointcut
在配置aop时,切点表达式中写入了形参,在通知方法中,引入形参和JoinPoint 形参时,必须要把JoinPoint形参放置在第一位,否则会出现标题错误
@Component @Aspect public class RunCaseAspect { @Pointcut(value = "execution(* com.nonobank.testcase.service.impl.TestCaseRunServiceImpl.runCase(..)) && args(resultHistory, tcId, tciIds, map, sessionId)", argNames = "resultHistory, tcId, tciIds, map, sessionId") public void runCase(ResultHistory resultHistory, Integer tcId, List<Integer> tciIds, Map<String, Object> map, String sessionId) {} @Before("runCase(resultHistory, tcId, tciIds, map, sessionId)") public void beforeRunAll(JoinPoint joinPoint, ResultHistory resultHistory, Integer tcId, List<Integer> tciIds, Map<String, Object> map, String sessionId) { System.out.println("beforeRunAll .... tcId = " + tcId); } @AfterReturning(value = "runCase(resultHistory, tcId, tciIds, map, sessionId)",returning = "o") public void afterRunAll(JoinPoint joinPoint, Object o, ResultHistory resultHistory, Integer tcId, List<Integer> tciIds, Map<String, Object> map, String sessionId) { System.out.println("AfterReturning ... o = " + o); } }
本文来自博客园,作者:margo,转载请注明原文链接:https://www.cnblogs.com/ZMargo/articles/11995943.html