gpt4 book ai didi

java - 使用 GSON 反序列化时如何记录丢弃的字段?

转载 作者:行者123 更新时间:2023-12-01 06:18:55 25 4
gpt4 key购买 nike

我使用 JSON 作为保存格式。

如果我更改对象的字段名称,GSON 将在加载旧版本时默默地丢弃原始字段,因为它们不再与新名称匹配。

如果我通过重构意外执行此操作,我希望能够收到一些通知,即“警告:反序列化期间在 ObjectType 中找不到变量名”。有一个 @Version 注释,但它并不完全是我正在寻找的。

是否有人编写了自定义反序列化器或自定义类型转换器,当 JSON 中的字段不存在于类型中时,它们会抛出错误?是否有另一个序列化库可以执行此操作?

编辑:如果有人有一个 GSON 解串器,我仍然会对它感兴趣。

最佳答案

Jackson可用于在意外的 JSON 元素上失败。 Jackson 还可以配置为收集(并记录)所有未绑定(bind)的 JSON 元素,如 http://www.cowtowncoder.com/blog/archives/2010/09/entry_414.html 中所述。 (搜索“任何 setter”)。

如果您已经熟悉 Gson,我记录了如何使用 Jackson 执行 Gson 用户指南中介绍的相同操作,网址为 http://programmerbruce.blogspot.com/2011/07/gson-v-jackson-part-6.html .

关于java - 使用 GSON 反序列化时如何记录丢弃的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15858566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com