gson 使JsonDeserializer成为全局效果

eagi6jfj  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(186)

当将json反序列化为Map<out Any, Any>时,gson将使用Double来填充Map,即使该字段是int number,所以如果可能的话,我使用MapDeserializerDoubleAsIntFixnumber转换为int
第一个

  • 而且当我使用GSON反序列化json作为map时,它就工作了。
val map: Map<out Any, Any> = GSON.fromJson(json, MapTypeToken.type)
  • 但是当Map是在一个数据类中作为一个字段时,MapDeserializerDoubleAsIntFix不起作用。

一个
那么,有没有什么方法可以反序列化Map或字段Map呢?

wtlkbnrh

wtlkbnrh1#

现在我用这个来解决。
第一个
但是如果另一个数据类有map,我必须编写另一个JsonDeserializer并注册它。
希望有一个更好的方法,使MapDeserializerDoubleAsIntFix作为全球工作。

相关问题