2016-01-11 54 views
1

Scala中有一個API,而不需要讓現有類來創建JSON字符串編碼成JSON,例如:創建一個JSON文字在Java中,而不需要對現有的類

val json: JsValue = Json.obj(
    "name" -> "Watership Down", 
    "location" -> Json.obj("lat" -> 51.235685, "long" -> -1.309197), 
    "residents" -> Json.arr(
     Json.obj(
     "name" -> "Fiver", 
     "age" -> 4, 
     "role" -> JsNull 
    ), 
     Json.obj(
     "name" -> "Bigwig", 
     "age" -> 6, 
     "role" -> "Owsla" 
    ) 
    ) 
) 

我知道這是詳細,但有時它很方便。

Java是否有類似的庫,或者我應該有一個類被轉換爲Json字符串?

回答

2

如果我沒有錯,你要求一個JSON對象的構建器。 This會幫助你我猜。

import org.json.simple.JSONObject; 

    JSONObject obj=new JSONObject(); 
    obj.put("name","foo"); 
    obj.put("num",new Integer(100)); 
    obj.put("balance",new Double(1000.21)); 
    obj.put("is_vip",new Boolean(true)); 
    obj.put("nickname",null); 
    System.out.print(obj); 

所以基本上你必須在你的類路徑中包含最新的.jar文件,你很好。

This也有幫助。這主要通過maven分發。

+0

我認爲它可以從maven中使用。謝謝 –

+0

我已經編輯了另一個項目的答案。希望它可以幫助你。 –

+0

非常感謝,我看到來自javax的一個很好,但是我必須使用來自fasterxml.Jackson(JsonNodeFactory)的相同特性,因爲我們已經在項目中使用了jackson。 –

相關問題