本文共 688 字,大约阅读时间需要 2 分钟。
类型安全转换系统包含四个个核心接口:
Converter, //简单转换器接口 GenericConverter, //通用转换器接口 ConversionService, //转换服务 ConverterRegistry //转换器注册他们之间的逻辑关系:
通过ConverterRegistry向系统中注入实现了Converter,GenericConverter接口的转换器,然后通过ConversionService对外提供类型转换服务.核心实现类GenericConversionService:通用类型转换服务类,实现了ConverterRegistry和ConversionService接口:
两个核心的组件:
private final Converters converters = new Converters();//存储所有的转换器//以转换对为key,支持该转换对转换器为值保存 private final MapconverterCache = new ConcurrentReferenceHashMap<>(64);
其中把所有的Converter接口实现,通过适配器,转换成GenericConverter;
现在看看系统支持的转换类把:
转换类很多,位于org.springframework.core.convert.support包下.从spring这个设计结构中我们可以看出一般功能的设计方案:
先按照功能进行接口设计,然后基于接口,实现类考虑如何满足接口功能,进行结构和算法层面的设计,最后进行编码.转载地址:http://kduti.baihongyu.com/