0

我想知道是否可以将任何 Java 对象转换为 JSON 对象。目前我有以下代码。

JSONArray data = new JSONArray();
for (User user : users) {
            JSONArray row = new JSONArray();
            row.put(user.getId()).put(user.getUserName()).put(user.isEnabled());
            data.put(row);
        }

当前的问题是不同的对象(例如用户和管理员)将具有不同的属性,因此上面的代码将适用于其他对象。我正在考虑在我的 GenericHibernateDAO 中放置一个类似的代码,以便自动将任何列表转换为 json 列表。

4

2 回答 2

2

您可以将您的 java 对象序列化为 json 对象。有 n 个库可用 exgson, jettyson, flexjson等。

GSON示例 -

Gson gson = new Gson();
Collection<Integer> ints = Lists.immutableList(1,2,3,4,5);

(Serialization)
String json = gson.toJson(ints); ==> json is [1,2,3,4,5]
于 2012-10-29T07:49:55.720 回答
1

这里我举例说明使用jackson将POJO转换为json的方式

  1. 创建你的 pojo : User user = new User();

  2. 您可以向/从用户设置或获取值

  3. 创建 ObjectMapper : ObjectMapper 映射器 = new ObjectMapper();
  4. String json = mapper.writeValueAsString(user);// 对象转json
于 2012-10-29T12:30:30.403 回答