Package org.miaixz.bus.core.convert
Class RegisterConverter
java.lang.Object
org.miaixz.bus.core.convert.ConverterWithRoot
org.miaixz.bus.core.convert.RegisterConverter
- All Implemented Interfaces:
Serializable,Converter
基于类型注册的转换器,提供两种注册方式,按照优先级依次为:
- 按照匹配注册,使用
register(MatcherConverter)。 注册后一旦给定的目标类型和值满足MatcherConverter.match(Type, Class, Object),即可调用对应转换器转换。 - 按照类型注册,使用
register(Type, Converter),目标类型一致,即可调用转换。
- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Field Summary
Fields inherited from class org.miaixz.bus.core.convert.ConverterWithRoot
converter -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription转换为指定类型 如果类型无法确定,将读取默认值的类型做为目标类型getConverter(Type type, Object value, boolean isCustomFirst) 获得转换器getCustomConverter(Type type) 获得指定类型对应的自定义转换器getCustomConverter(Type type, Object value) 获得匹配类型的自定义转换器getDefaultConverter(Type type) 获得默认转换器登记自定义转换器,登记的目标类型必须一致register(MatcherConverter converter) 登记自定义转换器,符合MatcherConverter.match(Type, Class, Object)则使用其转换器Methods inherited from class org.miaixz.bus.core.convert.ConverterWithRoot
getRootConverter
-
Constructor Details
-
RegisterConverter
-
-
Method Details
-
convert
Description copied from interface:Converter转换为指定类型 如果类型无法确定,将读取默认值的类型做为目标类型- Specified by:
convertin interfaceConverter- Parameters:
targetType- 目标Type,非泛型类使用value- 原始值,如果对象实现了此接口,则value为this- Returns:
- 转换后的值
- Throws:
ConvertException- 转换无法正常完成或转换异常时抛出此异常
-
getConverter
-
getDefaultConverter
-
getCustomConverter
-
getCustomConverter
-
register
登记自定义转换器,登记的目标类型必须一致- Parameters:
type- 转换的目标类型converter- 转换器- Returns:
- this
-
register
登记自定义转换器,符合MatcherConverter.match(Type, Class, Object)则使用其转换器- Parameters:
converter- 转换器- Returns:
- this
-