【问题标题】:Possible alternatives or solution to reading and writing large objects with Gson java使用 Gson java 读写大对象的可能替代方案或解决方案
【发布时间】:2015-03-09 19:41:39
【问题描述】:

我正在尝试通过 gson 读写一个对象。在项目的早期,这是完全可行的并且做得很好,但是当我为该对象编写更多数据时,我最终遇到了这样的事情:

我似乎无法抓取完整的堆栈轨道,因为它会在几毫秒内溢出我的控制台,但我已经粘贴了我的控制台可以抓取的所有内容:http://pastebin.com/v36d5qua

如果对此有解决方案,或者可能只是为此目的提供更好的 api,我将非常感谢一些建议。

当前使用情况:http://pastebin.com/2Yk2v0Tm

            GsonUtil.save(player, Player.class, new File("./resources/players/"+player.getId()+".json"));

P.S 我是 java 和这个网站的新手,如果我有误导性的标签、标题等,请告诉我。

【问题讨论】:

  • 您需要发布整个堆栈跟踪;您粘贴的 sn-p 不完整,不包含实际引发的异常。
  • 这很困难,因为这四行完全淹没了我的控制台,但我现在会显示所有可能的内容:pastebin.com/v36d5qua
  • 不幸的是,仍然不完整。不过我确实有一个猜测,你的播放器对象中有递归引用吗? (类似于player.team.players[0] == player?)因为如果是这样,GSON 可能会尝试制作一些无限嵌套的 JSON。
  • 感谢您的尝试,但不幸的是,没有,在我的播放器类中没有类似的东西
  • 请不要破坏您的问题。

标签: java serialization gson


【解决方案1】:

不要使用 gson。速度慢,有问题,使用不方便。只需使用 org.json - http://theoryapp.com/parse-json-in-java/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 2020-08-29
    • 1970-01-01
    • 2019-11-23
    • 2011-04-13
    • 2016-10-24
    相关资源
    最近更新 更多