我有内容的JSON文件:转换JSON格式
{
"id" : 10,
"name" : "book1",
"user" : "john",
"chapters" : [
{
"chaptername" : "chapter1",
"content" : "index"
}
]
}
我想它有一个很好的格式(例如树格式或表)转换。有没有人知道一些好的java包?
感谢
我有内容的JSON文件:转换JSON格式
{
"id" : 10,
"name" : "book1",
"user" : "john",
"chapters" : [
{
"chaptername" : "chapter1",
"content" : "index"
}
]
}
我想它有一个很好的格式(例如树格式或表)转换。有没有人知道一些好的java包?
感谢
它不会像变魔术一样工作,您可以使用GSON或杰克逊映射JSON转换成Java类型或对象,从那里你可以做你想要映射为对象的JSON的一切。
例如,你将有下面这样的蓝图:
public class YourJson {
private int id;
private String name, user;
private Chapter[] chapter;
...
// Getters and setters ommitted
...
}
public class Chapter {
private String chaptername;
private String content;
...
// Getters and setters ommitted
...
}
一旦你在项目中加入杰克逊作为一个库,你可以使用杰克逊的对象映射
ObjectMapper objectMapper = new ObjectMapper();
YourJson jsonAsObject = objectMapper.readValue(yourJsonString, YourJson.class);
从那里你可以访问属性
System.out.println(jsonAsObject.getId());
我会推荐JAXB;) – 2014-10-28 21:36:11
我haven'试过JAXB,但我会看看:D! – 2014-10-28 21:39:00
这很容易的人!所有你需要的是:1个类,1个注释,1个XML并执行unmarshall。最好的祝福! – 2014-10-28 21:43:21
尽管JSON提供了一种定义的描述数据的方式,但数据st它描述的结构纯粹是任意的。您也希望转换的格式也是任意的。一个单独的通用库如何能够从一个任意结构转换到另一个结构? – JAAulde 2014-10-28 21:31:03
@JAAulde JAXB? – 2014-10-28 21:34:42