使用idea的条件断点快速定位注解的处理类

看代码时会碰到注解的处理类难定位的情况,比如spring的某个注解我们想知道到底是谁在处理他,他起什么作用,通过普通的代码搜索功能不容易找到,比如好用的方法就是条件断点。

比如下断:AccessibleObject类的如下代码

@Override
public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass) {
return AnnotatedElement.super.isAnnotationPresent(annotationClass); //在这里下断点。 也可以下在 getAnnotations getDeclaredAnnotations

} 

isAnnotationPresent函数是jdk 类 AccessibleObject里提供的判断是否存在某个注解的方法,可以用户成员变量、方法上的注解。 这里如果对某个注解感兴趣可以设置条件断点,比如找 @Bean的处理类,可以设置断点的 condition 为 annotationClass.name.endsWith(".Bean") 即可。

 

原文地址:https://www.cnblogs.com/fsqsec/p/8660225.html