我需要以编程方式构建一个以下JSON。但是,需要一种优雅的方式将Java对象转换为JSON。所以,我可以避免使用字符串构建器来构建下面的JSON。
我意识到,有时,我在构建JSON时有特定键的参数数组。 请分享解决这个问题的通用方法。
请分享一些想法。
{
"tropo": [
{
"ask": {
"attempts": 3,
"say": [
{
"value": "Hi.",
"event": "timeout"
},
{
"value": "Hello",
"event": "nomatch:1"
},
{
"value": "Hello2",
"event": "nomatch:2"
},
{
"value": "Satheesh",
"voice": "veronica"
}
],
"choices": {
"value": "Yes(1,Yes),No(2,No)",
"mode": "ANY"
},
"voice": "veronica",
"recognizer": "en-us",
"timeout": 8,
"name": "year",
"minConfidence": 39,
"required": true
}
},
{
"on": {
"next": "https://test.app.com/WAP2/",
"event": "continue"
}
},
{
"on": {
"next": "https://test.app.com/WAP2/",
"event": "incomplete"
}
},
{
"on": {
"next": "",
"event": "hangup"
}
}
]
}
答案 0 :(得分:2)
正如paulsm4所说,我看看gson。它易于使用,您可以找到很多关于它如何在整个网络上运行的示例(official user guide)。
示例:
Employee employee = new Employee();
employee.setId(1);
employee.setFirstName("Lokesh");
employee.setLastName("Gupta");
employee.setRoles(Arrays.asList("ADMIN", "MANAGER"));
Gson gson = new Gson();
System.out.println(gson.toJson(employee));
Output:
{"id":1,"firstName":"Lokesh","lastName":"Gupta","roles":["ADMIN","MANAGER"]}
来自howtodoinjava.com/&#39> Google Gson教程:将Java对象转换为JSON 。