繁体   English   中英

Spring AOP:不使用自定义注释的方法执行建议

[英]Spring AOP: Advice not executing for method with custom annotation

我创建了一个自定义注释:

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface ValidateBeforeBuild {
}

一个方面是:

@Aspect
@Component
public class AspectForBuildInBuilders {

    private static final Logger LOGGER = LoggerFactory.getLogger(AspectForBuildInBuilders.class);

    @Before("@annotation(validateBeforeBuild )")
    public void validateBusinessModelAdvice(JoinPoint jp, ValidateBeforeBuild validateBeforeBuild ) throws Throwable {
        LOGGER.info("Executing class: {}", jp);
    }
}

我有一个标有上面注释的build() 当我尝试调用build() ,我没有从validateBusinessModelAdvice()获取日志消息。 我在其中一个配置类中也有@EnableAspectJAutoProxy 我错过了什么吗? 是否还需要更多信息?

您将注释定义为ValidateBeforeBuild并在您指定的validateBeforeBuild方面(注意注释中的上部V

尝试改变

@Before("@annotation(validateBeforeBuild)")

对于

@Before("@annotation(ValidateBeforeBuild)")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM