Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否有必要创建一个Spring方面的建议,该建议会触发任何未被特定注释注释的方法?_Java_Spring Boot_Java Annotations_Spring Aspects - Fatal编程技术网

Java 是否有必要创建一个Spring方面的建议,该建议会触发任何未被特定注释注释的方法?

Java 是否有必要创建一个Spring方面的建议,该建议会触发任何未被特定注释注释的方法?,java,spring-boot,java-annotations,spring-aspects,Java,Spring Boot,Java Annotations,Spring Aspects,基本上,我正在尝试创建一个日志系统来记录大多数控制器方法(它们的参数、主体、状态代码等),但是,由于某些特定原因,我不想记录一些控制器方法。我不想创建一个表示该方法将被记录的注释(因为将会有很多),相反,我想创建一个表示该方法不应被记录的注释。显然,我不能否定Spring Aspect建议中的注释,所以有解决方法吗?(例如从ProceedingJoinPoint获取方法的所有注释,然后检查它们是否包含该NoLog注释) 好的,看起来您可以使用上面的代码尝试获取方法上的CustomAnnotati

基本上,我正在尝试创建一个日志系统来记录大多数控制器方法(它们的参数、主体、状态代码等),但是,由于某些特定原因,我不想记录一些控制器方法。我不想创建一个表示该方法将被记录的注释(因为将会有很多),相反,我想创建一个表示该方法不应被记录的注释。显然,我不能否定Spring Aspect建议中的注释,所以有解决方法吗?(例如从
ProceedingJoinPoint
获取方法的所有注释,然后检查它们是否包含该
NoLog
注释)


好的,看起来您可以使用上面的代码尝试获取方法上的
CustomAnnotation
,如果您的方法没有使用此
CustomAnnotation
进行注释,则将返回
null
,否则将返回
代理
对象。如果你的问题已经解决,请标出答案。这是将问题标记为已解决的方式。
MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();
Method method = joinPoint.getTarget().getClass()
      .getMethod(methodSignature.getMethod().getName(),
                 methodSignature.getMethod().getParameterTypes());
CustomAnnotation annotation = method.getAnnotation(CustomAnnotation.class);