fastjson 的 json 序列化(类型无关)生成的类名支持短名称

ioekq8ef  于 4个月前  发布在  其他
关注(0)|答案(2)|浏览(62)

fastjson 使用 SerializerFeature.WriteClassName 特性生成的类名是包含完整的包名和类名。这在跨语言实现数据交换时不太理想。

最好能提供类名的映射,例如可以自定义 com.gitee.beans.Person 映射为 Person 短名称。

可参考 fst 的做法:

conf.registerCrossPlatformClassMapping("list", "java.util.Arrays$ArrayList");

参考 https://github.com/RuedigerMoeller/fast-serialization/wiki/JSON-serialization

yptwkmov

yptwkmov1#

你好,我也碰到了这样的问题,请问目前fastjson是否实现了这个功能

d7v8vwbk

d7v8vwbk2#

可以参考这里自定义:
ParserConfig.getGlobalInstance().apply {
isAutoTypeSupport =true
addAutoTypeCheckHandler { clazzName, clazz, feature ->
clazzName?.let { Class.forName(clazzName) }
}
}

相关问题