当前位置: 首页 > 知识库问答 >
问题:

对接口方法上的自定义注释的Spring方面调用

沃宇
2023-03-14

我有这个接口:

public interface FakeTemplate {

    @CustomAnnotation
    void foo() {

    }

}

接口的这个实现:

@Component
public FakeImpl implements FakeTemplate {

    @Override
    public void foo() {
        //Do Stuff
    }

}
@Aspect
@Component
public class CustomAspect {

    @Before(value = "@annotation(com.fake.CustomAnnotation)")
    public void doStuffBefore(JoinPoint joinPoint} {

    }

}

共有1个答案

葛驰
2023-03-14

注释继承不适用于Java中的方法。但是您可以使用其他切入点表达式,比如execution(public*faketemplate+.foo(..))

 类似资料:
  • 现有的答案很好地解释了如何在方法执行时间日志中使用自定义注释。我想知道是否有办法对类和方法使用相同的注释,但是点切应该在使用它的地方有所不同。 若注释用于类,那个么类中的所有方法都应该考虑在方面类中记录执行时间(比如

  • 我正在编写一个库/sdk,它可以拦截任何使用自定义注释进行注释的方法。代码的工作方式有点像这样 截取这个的方面有一个切入点表达式 当我在与相同的包中描述方面时,此代码工作正常。但是,如果我创建一个单独的库并定义方面,因为它无法拦截。有帮助吗? 回应@Bond的评论 Spring版本:Spring上下文-4.1.7。发布aspectj-1.6.5问题的关键是注释不会在同一个项目中使用。在编译之后,它

  • 我试图拦截一个用JAX-RS@POST标注的接口方法。我的切入点适用于所有非接口方法,如果@POST-注释直接位于被调用的方法。 拦截的接口方法: 要匹配方法的PointCut: 接口在v1com.myapp.social.webapi.包中,即使我将方法更改为公共AeyJ也不会拦截调用。 在我的切入点内有什么需要改变的吗?我怎样才能让它工作?

  • 在我的Spring Boot项目中,我创建了一个自定义注释,其中validator扩展了ConstraintValidator,以验证RequestBody中的一些字段。注释对于非嵌套字段可以很好地工作,但对于嵌套字段不调用验证器。 我的注释如下所示: 我的验证类: 它在这样的情况下工作正常: 但是当放在嵌套对象上时,不会调用验证器: 类在我的中的用法: 关于如何解决这个问题有什么想法吗?我已经尝

  • 本文向大家介绍django-rest-swagger对API接口注释的方法,包括了django-rest-swagger对API接口注释的方法的使用技巧和注意事项,需要的朋友参考一下 Swagger是一个API开发者的工具框架,用于生成、描述、调用和可视化RESTful风格的Web服务。总体目标是使客户端和文件系统服务器以同样的速度来更新,方法,参数和模型紧密集成到服务器端的代码中,允许API始终

  • 问题内容: 我想编写自己的Web安全模块库,但无法解决问题。例; 我有一堂课,有一种方法。方法有我的自定义注释。 当此方法调用时,如何触发我的注释。 (示例; Hibernate验证程序。我们在method上编写了hibernate批注,它仅在被调用的方法上起作用) 顺便说一句我的英语不好:) 问题答案: 注释不是“触发的” …您必须编写代码来查找它们的存在并采取措施。 “代码”可以在运行时执行,