【问题标题】:Java bean to JSON with selecting some fields选择一些字段的 Java bean 到 JSON
【发布时间】:2015-02-14 11:08:12
【问题描述】:

我有 Java bean:

public class User {
    private int id;
    private String name;
    private Address address;
    private List<String> favoriteBooks;
    private List<String> favoriteFilms;

    //getters and setter
}

我想将 User 类的实例转换为 JSON 格式,但只选择三个字段:id、name、favoriteBooks。我搜索了一些解决方案,例如

String[] fieldNames = { "id", "name", "favoriteBooks" };
JsonObject jo = new JsonObject(user, fieldNames);

我该怎么做?

编辑 我使用 Jackson 库在 https://stackoverflow.com/a/13792700 找到了答案

【问题讨论】:

标签: json javabeans


【解决方案1】:

您可以尝试 GSON 库,它允许您将 bean 转换为 json,反之亦然。

【讨论】:

    【解决方案2】:

    这在 Jersey 2(MOXy 或 Jackson 2)中是可能的。对于这样的查询,

    people/1234?select=familyName,givenName
    

    它会返回这个 json:

    {
        "familyName": "Dowd",
        "givenName": "Andrew"
    }
    

    查找示例here

    【讨论】:

      【解决方案3】:

      使用 jakson 库,您可以使用 @JsonIgnore 注释标记属性以将其排除在转换之外。

      【讨论】:

        猜你喜欢
        • 2020-09-27
        • 2011-06-12
        • 2017-08-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多