我们将 Java 应用程序的用户首选项存储在 JSON 文件中,使用Jackson http://jackson.codehaus.org/。随着我们继续开发该应用程序,我们将添加首选项、重命名首选项并删除过时的首选项。当用户将应用程序升级到下一个版本时,文件格式可能会发生变化。这会导致 Jackson 抛出异常,并且即使格式 90% 相同,也无法解析文件。我应该如何处理升级文件格式?
我正在考虑使用JSONT http://goessner.net/articles/jsont/升级文件并编写我自己的 Jackson 流解析器,该解析器比完整绑定解析器更宽松,以防 JSONT 升级出现问题。其他人做了什么来处理升级文件格式?
Jackson 目前没有任何内置的 JSON 版本控制支持,例如Gson 确实 http://sites.google.com/site/gson/gson-user-guide#TOC-Versioning-Support. 杰克逊第108期 http://jira.codehaus.org/browse/JACKSON-108两年多前就已记录,以解决此类可能的增强问题。请毫不犹豫地投票支持其实施。 (我已经做了。)
我将采取的方法是实现自定义 JSON 版本控制支持解决方案,类似于 Gson 的做法。 (仅这一功能可能不足以让我切换到 Gson。)然后,在处理反序列化后或自定义反序列化期间的不同版本时,Java bean 处理中的逻辑可能相对简单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)