类 JsonSchemaTypeMapper
java.lang.Object
com.agentsflex.core.util.JsonSchemaTypeMapper
Java 类型到 JSON Schema 类型的映射工具类
支持标准类型、集合类型、泛型类型及自定义类型注册
JSON Schema 标准类型: string, number, integer, boolean, object, array, null
- 从以下版本开始:
- 2026/03/10
- 作者:
- fuhai
-
嵌套类概要
嵌套类 -
字段概要
字段修饰符和类型字段说明private static final Map<Class<?>,JsonSchemaTypeMapper.TypeMappingStrategy> 自定义类型映射策略(可扩展)类型映射缓存:避免重复反射解析,提升性能 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static void清除缓存(测试或热更新场景使用)private static Stringprivate static booleanisFloatingNumericType(Class<?> type) private static booleanisIntegerNumericType(Class<?> type) private static booleanisStringLikeType(Class<?> type) static StringmapToSchemaType(Class<?> javaType) 将 Java Class 映射为 JSON Schema 类型字符串static voidregisterStrategy(Class<?> type, JsonSchemaTypeMapper.TypeMappingStrategy strategy) 注册自定义类型映射策略static StringresolveArrayItemType(Type genericType) 解析数组/集合元素的 JSON Schema 类型(支持泛型)private static StringresolveType(Type type)
-
字段详细资料
-
TYPE_CACHE
类型映射缓存:避免重复反射解析,提升性能 -
CUSTOM_STRATEGIES
自定义类型映射策略(可扩展)
-
-
构造器详细资料
-
JsonSchemaTypeMapper
private JsonSchemaTypeMapper()私有构造,防止实例化
-
-
方法详细资料
-
mapToSchemaType
将 Java Class 映射为 JSON Schema 类型字符串- 参数:
javaType- Java 类型- 返回:
- JSON Schema 类型: string/number/integer/boolean/object/array/null
-
resolveArrayItemType
解析数组/集合元素的 JSON Schema 类型(支持泛型)- 参数:
genericType- 泛型类型信息,如List<String>的String- 返回:
- 元素类型的 JSON Schema 类型
-
registerStrategy
public static void registerStrategy(@NotNull Class<?> type, @NotNull JsonSchemaTypeMapper.TypeMappingStrategy strategy) 注册自定义类型映射策略示例:
registerStrategy(LocalDateTime.class, t -> "string", "date-time")- 参数:
type- Java 类型strategy- 映射策略
-
clearCache
清除缓存(测试或热更新场景使用) -
doMapType
-
resolveType
-
isIntegerNumericType
-
isFloatingNumericType
-
isStringLikeType
-