首页 > 技术文章 > Spring注解

StarkBrothers 2020-01-13 20:39 原文

1、注解存在类或方法上,所以在每个类或方法的元数据对象中都会有一个存放注解的属性,这个属性存储的是所有注解实例及由对每个注解类型的注解层级机构构建的映射父子关系,类型是【TypeMappedAnnotations】。所里这里面这里面牵涉到元数据,注解实例,注解类型,注解类型的注解,及由注解的层级关系形成的注解类型映射。形成的映射集合中,每个元素都有源即父节点【source】,根【root】,与根节点之间的距离【distance】,与根节点之间所有注解节点的类型集合【metaTypes】,从而形成了每一颗映射树【AnnotationTypeMappings】中的节点【AnnotationTypeMapping】,并且第一个节点即根节点一定是在类或方法上直接声明的注解,并且是无源有根距离为0。

2、元数据的注解集合【TypeMappedAnnotations】中有一个属性【aggregates】,这个属性是个集合,看着好像是针对注解的,有几个注解就应该有几个元素,但其实不是这样,它是针对元数据的,在这里只有一个元数据,所以只会有一个元素。

clip_image001

clip_image002

clip_image003

clip_image004

clip_image005

clip_image006

clip_image007

clip_image008

clip_image009

clip_image010

clip_image011

推荐阅读