2012-10-29 17 views
0

我想知道是否有可能將任何Java對象轉換爲JSON對象。目前我有以下代碼。使用通用函數將任何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列表。

回答

2

你可以將你的java對象序列化爲json對象。有n個圖書館的數量可前gson, 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] 
1

在這裏,我將舉例說明使用POJO傑克遜

  1. 創建POJO以JSON的方式:用戶user = new User();

  2. 您可以設置或用戶

  3. 得到值/創建ObjectMapper:ObjectMapper映射器=新ObjectMapper();
  4. String json = mapper.writeValueAsString(user); // object to json
相關問題