Spring——core工具包

来源:互联网 发布:python scrapy 教程pdf 编辑:程序博客网 时间:2024/06/01 16:25

一、Core

1、基础设施工具类(spring框架基础部分的核心工具类)

ClassUtils :Class的类加载 、查找类全部信息、类信息的处理等
ObjectUtilsTest:基本类型的比较或数组比较,如果认为两个数组是相等的
PatternMatchUtils:模式匹配 xx 模式匹配 * 、*xx 、*xx* 、xx* 、*xx*y
PropertyPlaceholderHelper:解析文本中占位符并替换成属性值
ReflectionUtils:非常好用的反射类,得到字段、方法及过滤方法和方法回调
ResourceUtils:这个解析定位资源非常好用 比如 classpath--URL-->File
SerializationUtils:序列化工具
SystemPropertyUtils:使用系统环境变量值替换占位符来生成字符串
AnnotationUtils:注解工具类 想要解析注解请找它,绝对给力。
BridgeMethodResolver:判断是否是桥梁方法 把桥梁方法转化为正常方法
CollectionFactory:使用Map.class List.class等常用集合类型生产对象Map List等集合对象
Constants:加载类中的public static final常量进行分析其信息 查找 转换等
Conventions:根据方法返回值 、 字段、返回相应的字符串类型名称,可以用以自动化给其起别名
ControlFlowFactory:栈轨迹信息查询 判断 类 方法 及输入值是否在栈的轨迹中
MethodIntrospector:为类中相关方法注入数据或过滤、把类中的相应的代理方法转化为接口方法
ResolvableType:统一所有类型为ResolvableType对象来操作类型,很赞,使用很方便

2、解析类元数据

类中的元数据包含了类元数据、方法元数据及注解元数据;spring使用了两种方式来注入元数据获得类、注解、方法元数据信息:
1)使用ASM方式,通过加载class资源读取到相应的访问器里,来填充相应的元数据,比反射速度快很多
2)使用标准的反射,从Class对象获取类、方法、字段、注解等信息注入到元数据中

元数据:类名称、是否是注解,是否是接口、父类、成员的类名等基本信息
Spring通过MetadataReaderFactory来创建元数据读取器MetadataReader来获取元数据Metadata,还有TypeFilter(正则、类型层次、非注解)过滤元数据
ClassMetadata接口装载类元数据
                        -->AnnotationMedata接口不仅装载类元数据,还装载所有注解元素
                        -->ClassMetadataReadingVisitor直接获取元数据
AnnotatdTypeMedata接口定义被注解的类型(这里包括了类及方法)上的所有注解信息
                        -->MethodMedata装载了方法元数据
                        -->AnnotationMedata装载了注解元数据
AnnotationAttributesReadingVisitor注解访问器,finally类,

3.底层Resource资源描述及基本资源加载器实现

4.Property管理

5.类型转换服务

6.spring环境搭建

二、Beans

包含访问配置文件、创建和管理 bean 以及进行 Inversion of Control / Dependency Injection(IOC/DI) 操作相关的所有类。

BeanFactory:用于管理Bean的一个工厂类,获取spring bean容器的根接口
FactoryBean:它是实现了FactoryBean<T>接口的Bean,根据该Bean的Id从BeanFactory中获取的实际上是FactoryBean的getObject()返回的对象,而不是FactoryBean本身, 如果要获取FactoryBean对象,可以在id前面加一个&符号来获取。

三、Context

构建于 Core 和 Beans 模块基础之上,提供了一种类似于 JNDI 注册器的框架式的对象访问方法

四、Expression Language

模块提供了一个强大的表达式语言用于在运行时查询和操纵对象

原创粉丝点击