杰克逊定制串行器委托给杰克逊序列化
我有一个自定义的序列化程序,我将其中的值更改为不同的类型。 我不知道这是什么类型,所以想委托杰克逊弄清楚如何序列化(因为杰克逊已经具备了所有这些功能)。 有什么办法可以在MySerializer中做到这一点? 换句话说,我不想在结果值的类型上做一个大的switch语句来决定使用哪种JsonGenerator方法。 (代码在Kotlin,顺便说一句)
class MySerializer() : JsonSerializer<Any?>() { override fun serialize(value: Any?, gen: JsonGenerator?, serializers: SerializerProvider?) { // Here I transform the value to another type and want to delegate to Jackson to determine how it should be serialized val myNewVal = someFunction(value) // something like super.serialize(myNewVal)??? } }
- 你如何声明一个使用Jackson XML的JsonTypeInfo.As.WRAPPER_OBJECT的多态字段?
- 注册反序列化器以包装类型的List
- 在Kotlin中,为什么杰克逊在某些情况下未能解组未注释的对象,而不是在其他情况下
- 杰克逊反序列化 – Kotlin数据类 – 每个映射器缺少字段的默认值
- Kotlin:数据类的JsonProperty.Access.READ_ONLY
- Spring数据Elasticsearch与Kotlin数据类的脚本字段导致Jackson序列化问题
- Spring启动REST服务:JSON反序列化不起作用
- Kotlin + Spring Boot请求编组
- Kotlin – 杰克逊忽略空值