草庐IT

Spring AOP : Getting parameters of the pointcut annotation

coder 2023-05-12 原文

考虑我已经定义了以下方面:

@Aspect
public class SampleAspect {

    @Around(value="@annotation(sample.SampleAnnotation)")
    public Object display(ProceedingJoinPoint joinPoint) throws Throwable {
        // ...
    }
}

和注释

public @interface SampleAnnotation {
    String value() default "defaultValue";
}

如果我的aspect有没有办法读取显示方法中注解SampleAnnotation的value参数?

感谢您的帮助, 埃里克

最佳答案

将建议签名更改为

@Around(value="@annotation(sampleAnnotation)")
public Object display(ProceedingJoinPoint joinPoint, SampleAnnotation sampleAnnotation ) throws Throwable {
    // ...
}

您将可以访问注释中的值。

docs了解更多信息。

关于 Spring AOP : Getting parameters of the pointcut annotation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5282242/

有关Spring AOP : Getting parameters of the pointcut annotation的更多相关文章

  1. 【华为OD技术面试 | 真八股 】MySQL联合索引,谈springIOC的理解,谈springAOP的理解,Erika和zookeeper等问题 - 2

    文章目录华为OD面试流程1.mysql数据库建了两个字段,且设置了联合索引,如果其中有一个字段为空会出现什么问题?2.谈谈springIOC的理解,有什么好处,解决了什么问题3.谈谈springAOP的理解,切面编程有没有实际应用,有哪些注解,作用是什么,有那些应用场景?4.Erika和zookeeper有了解过吗,作用是什么,主要解决了什么问题5.谈谈JDK、JRE、JVM的理解,区别是什么6.谈谈对泛型的理解7.JVM的组成华为OD面试流程机试:三道算法题,关于机试,橡皮擦已经准备好了各语言专栏,可以直接订阅。性格测试:机试技术一面(本专栏核心)技术二面(本专栏核心)主管面试定级定薪发of

  2. SpringAop之joinPoint讲解 - 2

    一、学习背景摸鱼的时候继续复刻demo,没错,同之前一篇文章,在写aop时又发现自己对aop只停留在面试阶段,甚至还不如,完全不会实践,所以在此记录复刻aop用到的的一些且自己已经遗忘的知识。那么复刻的一个需求点我以最简单来说对于此次要学习的内容:就是通过joinPoint获取方法上的特定注解。注解代码如下:importcom.uum.common.core.enums.BusinessType;importjava.lang.annotation.*;/***自定义注解--操作日志记录*/@Documented@Target(ElementType.METHOD)@Retention(Ret

  3. SpringAop之joinPoint讲解 - 2

    一、学习背景摸鱼的时候继续复刻demo,没错,同之前一篇文章,在写aop时又发现自己对aop只停留在面试阶段,甚至还不如,完全不会实践,所以在此记录复刻aop用到的的一些且自己已经遗忘的知识。那么复刻的一个需求点我以最简单来说对于此次要学习的内容:就是通过joinPoint获取方法上的特定注解。注解代码如下:importcom.uum.common.core.enums.BusinessType;importjava.lang.annotation.*;/***自定义注解--操作日志记录*/@Documented@Target(ElementType.METHOD)@Retention(Ret

  4. Spring(十四):SpringAOP及AOP的三种实现方法 - 2

    一、什么是AOPAOP为AspectOrientedProgramming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。二、AOP的一些概念1.Aspect(切面):切面是通知和切入点的结合。2.Joinpoint(连接点):与切入点匹配的执行点,例如执行方法或处理异常。在SpringAOP中,连接点始终表示方法

  5. Spring(十四):SpringAOP及AOP的三种实现方法 - 2

    一、什么是AOPAOP为AspectOrientedProgramming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。二、AOP的一些概念1.Aspect(切面):切面是通知和切入点的结合。2.Joinpoint(连接点):与切入点匹配的执行点,例如执行方法或处理异常。在SpringAOP中,连接点始终表示方法

  6. 开发日志02-解决`response`和SpringAop层相关冲突报错问题 - 2

    解决一个Bug在昨晚的开发中遇到了一个非常令人头疼的Bugjava.lang.IllegalStateException:getOutputStream()hasalreadybeencalledforthisresponse报错信息如下:有点长。。。java.lang.IllegalStateException:getOutputStream()hasalreadybeencalledforthisresponse atorg.apache.catalina.connector.Response.getWriter(Response.java:584) atorg.apache.catali

  7. 开发日志02-解决`response`和SpringAop层相关冲突报错问题 - 2

    解决一个Bug在昨晚的开发中遇到了一个非常令人头疼的Bugjava.lang.IllegalStateException:getOutputStream()hasalreadybeencalledforthisresponse报错信息如下:有点长。。。java.lang.IllegalStateException:getOutputStream()hasalreadybeencalledforthisresponse atorg.apache.catalina.connector.Response.getWriter(Response.java:584) atorg.apache.catali

随机推荐