Java 如何使用;宣布;SpringAspectJ中的指令?
在Spring4.2项目中,我有很多课程。 我想用@Xyz注释对它们进行注释。根据AspectJ文档,它可以由Java 如何使用;宣布;SpringAspectJ中的指令?,java,spring,annotations,aspectj,Java,Spring,Annotations,Aspectj,在Spring4.2项目中,我有很多课程。 我想用@Xyz注释对它们进行注释。根据AspectJ文档,它可以由 declare @type : x.y.z.* : @Xyz; 指示。 但是我不知道应该把它放在哪里。我做了一些测试,经过一些努力,我寻找了具体的实现。遗憾的是,@DeclareAnnotation存在,但没有实现 我们可以在这里看到。 我认为它会在1.5.3版本中出现注释后实现。我的错 原始答案(AspectJ v1.8.9不起作用)。 首先,需要在配置中启用AspectJ。例
declare @type : x.y.z.* : @Xyz;
指示。
但是我不知道应该把它放在哪里。我做了一些测试,经过一些努力,我寻找了具体的实现。遗憾的是,
@DeclareAnnotation
存在,但没有实现
我们可以在这里看到。
我认为它会在1.5.3版本中出现注释后实现。我的错
原始答案(AspectJ v1.8.9不起作用)。 首先,需要在配置中启用AspectJ。例如,Java配置:
@Configuration
@EnableAspectJAutoProxy
public class AopConfiguration {}
然后使用@DeclareAnnotation
注释创建一个新的方面:
@Aspect
public class XyzAspect {
@DeclareAnnotation("x.y.z.*")
@Xyz class XyzClass {}
@DeclareAnnotation("x.y.z.MyClass.*(..)")
@Xyz void xyzMethod() {}
}
我在我这边做了一些测试,经过一些努力,我寻找具体的实现。遗憾的是,
@DeclareAnnotation
存在,但没有实现
我们可以在这里看到。
我认为它会在1.5.3版本中出现注释后实现。我的错
原始答案(AspectJ v1.8.9不起作用)。 首先,需要在配置中启用AspectJ。例如,Java配置:
@Configuration
@EnableAspectJAutoProxy
public class AopConfiguration {}
然后使用@DeclareAnnotation
注释创建一个新的方面:
@Aspect
public class XyzAspect {
@DeclareAnnotation("x.y.z.*")
@Xyz class XyzClass {}
@DeclareAnnotation("x.y.z.MyClass.*(..)")
@Xyz void xyzMethod() {}
}
我瞄准一个类时,它似乎瞄准了一个XYZ方法。目前正在尝试
@Aspect public class AnnotationAspect{@DeclareAnnotation(“x.y.z+”)@JsonIgnoreProperties(ignoreUnknown=true)Object any;}
我明白了,它只由注释值而不是应用的属性决定。还在建…不-不走运<代码>我做了一些测试,经过一番努力,我寻找了具体的实现。遗憾的是,@DeclareAnnotation
存在,但没有实现。。。我的错。我想是的,因为它是从1.5.3开始的,我们现在是1.8.9。。。我瞄准一个类时,它似乎瞄准了一个XYZ方法。目前正在尝试@Aspect public class AnnotationAspect{@DeclareAnnotation(“x.y.z+”)@JsonIgnoreProperties(ignoreUnknown=true)Object any;}
我明白了,它只由注释值而不是应用的属性决定。还在建…不-不走运<代码>我做了一些测试,经过一番努力,我寻找了具体的实现。遗憾的是,@DeclareAnnotation
存在,但没有实现。。。我的错。我想是的,因为它是从1.5.3开始的,我们现在是1.8.9。。。