【问题标题】:simple method/extendable class to make my toString method of a POJO output json like output?简单的方法/可扩展类使我的 POJO 输出 json 的 toString 方法像输出?
【发布时间】:2013-11-25 15:16:45
【问题描述】:

我有许多 pojos 用于 jersey 客户端,以填充来自 restful 调用的 JSON 数据。客户端正在读取 json 并使用 JacksonJsonProvider 填充这些对象。我没有使用任何注解,变量名等于传入的json。

我希望这些 PoJos 的 toStrng 方法能够自动输出它们所代表的 json 的表示,而不必手动编写每个 toString。由于这些是以 simlpe 树格式构造的基本 POJO,因此在 toString 方法中将这些 pojo 输出为 json 应该非常容易。事实上,我知道如果我愿意的话,我可以在一些父/抽象类中使用反射来自己做这件事。但是,感觉我不应该手动执行此操作。是否已经有一些方法可以代替我使用?

我不坚持输出是 json,虽然这样会更好,但是任何类似的自动可视化变量的方法都可以,而无需我手动编写它。

谢谢

【问题讨论】:

    标签: java json jersey


    【解决方案1】:

    如果您使用Google GSON,您可以将对象序列化为 JSON。你的toString() 看起来像:

    public String toString() {
        return StaticLib.GSON.toJson(this);
    }
    

    一个 GSON 对象可以在所有对象之间共享,因此我将这个神秘的 StaticLib 类包含在内。我敢肯定,您可以在自己的项目中找到正确的名称或位置。

    【讨论】:

    • 能否请您告诉我 StaticLib 的导入语句,因为我无法在 gson.jar 中找到它。
    • @ParameshKorrakuti StaticLib 应该引用您创建的静态类,该类包含您要在整个项目中使用的 GSON 对象的全局实例。
    猜你喜欢
    • 2010-09-17
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2018-03-28
    • 1970-01-01
    • 1970-01-01
    • 2015-06-03
    • 2016-08-12
    相关资源
    最近更新 更多