类 AnnotationHandler<T extends Annotation>
- java.lang.Object
-
- xyz.xiezc.ioc.definition.AnnotationOrder
-
- xyz.xiezc.ioc.annotation.AnnotationHandler<T>
-
- 所有已实现的接口:
Comparable<AnnotationOrder>
- 直接已知子类:
AopAnnotationHandler,BeanAnnotationHandler,BeanScanAnnotationHandler,ComponentAnnotationHandler,ConfigurationAnnotationHandler,InitAnnotationHandler,InjectAnnotationHandler,ValueAnnotationHandler
public abstract class AnnotationHandler<T extends Annotation> extends AnnotationOrder
注解处理器, 每一个注解都应该对应一个处理器。- 作者:
- wb-xzc291800
-
-
构造器概要
构造器 构造器 说明 AnnotationHandler()
-
方法概要
所有方法 静态方法 实例方法 抽象方法 具体方法 修饰符和类型 方法 说明 static BeanDefinitiondealBeanAnnotation(Annotation annotation, Class clazz, ApplicationContextUtil applicationContextUtil)static BeanDefinitiondealBeanAnnotation(String beanName, Class clazz, ApplicationContextUtil applicationContextUtil)abstract Class<T>getAnnotationType()protected Class<?>getRealBeanClass(BeanDefinition beanDefinition)获取BeanDefinition的真实类型, 因为有些Bean是通过FactoryBean创建的abstract voidprocessClass(T annotation, Class clazz, ApplicationContextUtil contextUtil)如果是在类注解, 则会调用这个方法处理abstract voidprocessField(FieldDefinition fieldDefinition, T annotation, BeanDefinition beanDefinition, ApplicationContextUtil contextUtil)如果是字段注解,则会调用这个方法来处理abstract voidprocessMethod(MethodDefinition methodDefinition, T annotation, BeanDefinition beanDefinition, ApplicationContextUtil contextUtil)如果是方法注解,则会调用这个方法来处理-
从类继承的方法 xyz.xiezc.ioc.definition.AnnotationOrder
compareTo
-
-
-
-
方法详细资料
-
processClass
public abstract void processClass(T annotation, Class clazz, ApplicationContextUtil contextUtil)
如果是在类注解, 则会调用这个方法处理- 参数:
clazz- 被注解类的基本信息annotation- 这个类上的所有注解contextUtil- 容器
-
processMethod
public abstract void processMethod(MethodDefinition methodDefinition, T annotation, BeanDefinition beanDefinition, ApplicationContextUtil contextUtil)
如果是方法注解,则会调用这个方法来处理- 参数:
beanDefinition- 被注解的类methodDefinition- 被注解的方法annotation- 这个类上的所有注解contextUtil- 容器中已有的所有bean信息
-
processField
public abstract void processField(FieldDefinition fieldDefinition, T annotation, BeanDefinition beanDefinition, ApplicationContextUtil contextUtil)
如果是字段注解,则会调用这个方法来处理- 参数:
beanDefinition- 被注解的类fieldDefinition- 被注解的字段annotation- 这个类上的所有注解contextUtil- 容器中已有的所有bean信息
-
getRealBeanClass
protected Class<?> getRealBeanClass(BeanDefinition beanDefinition)
获取BeanDefinition的真实类型, 因为有些Bean是通过FactoryBean创建的- 参数:
beanDefinition-- 返回:
-
dealBeanAnnotation
public static BeanDefinition dealBeanAnnotation(Annotation annotation, Class clazz, ApplicationContextUtil applicationContextUtil)
-
dealBeanAnnotation
public static BeanDefinition dealBeanAnnotation(String beanName, Class clazz, ApplicationContextUtil applicationContextUtil)
-
-