TypeConverter 类型转换工具
模块:
src/utils/TypeConverter.ts
用途: 提供 JSON Schema 与各种数据库类型之间的转换
📑 目录
概述
TypeConverter 是一个静态工具类,用于在 JSON Schema 类型与各种数据库类型之间进行转换。它是所有导出器的基础依赖。
核心功能
- ✅ JSON Schema ↔ MongoDB BSON 类型转换
- ✅ JSON Schema ↔ MySQL 类型转换
- ✅ JSON Schema ↔ PostgreSQL 类型转换
- ✅ 属性名规范化(驼峰 ↔ 下划线)
- ✅ 格式验证正则表达式
- ✅ Schema 合并与约束提取
快速开始
API 参考
toJSONSchemaType(nativeType)
将类型标识转换为 JSON Schema 的 type 字符串。
toMongoDBType(jsonSchemaType)
JSON Schema 类型转 MongoDB BSON 类型。
toMySQLType(jsonSchemaType, schemaFragment)
JSON Schema 类型转 MySQL 数据类型。
toPostgreSQLType(jsonSchemaType, schemaFragment)
JSON Schema 类型转 PostgreSQL 数据类型。
normalizePropertyName(name)
规范化属性名:去除首尾空白、将非法字符替换为下划线,并压缩连续下划线。
formatToRegex(format)
获取格式对应的 RegExp 实例;未知格式返回 null。
mergeSchemas(base, override)
合并两个 JSON Schema 对象。
extractConstraints(schema)
提取 Schema 中的约束条件。
类型映射表
JSON Schema → MongoDB
JSON Schema → MySQL
JSON Schema → PostgreSQL
实用示例
批量类型转换
格式验证
相关文档
对应示例文件
示例入口: type-converter.ts
说明: 覆盖类型映射、枚举到 MySQL ENUM(...)、PostgreSQL 实际 UUID 映射、属性名规范化、正则获取、Schema 合并和约束提取。