一、json介紹
JSON(JavaScript Object Notation)是一種輕量級的數據交換格式。相對於XML的冗餘和複雜,JSON具備優雅、簡潔和快速的特性。JSON是基於JavaScript的一個子集,因此在JavaScript中使用起來非常簡便。
JSON格式的數據可以在各種語言中輕易的讀取和解析,這種格式易於閱讀,易於編寫,易於傳輸,成為了一種常用的數據傳輸格式。JSON通常用於Web前端和伺服器之間的數據交換。
二、net.sf.jsonmaven簡介
net.sf.jsonmaven是一個JSON的Java實現庫,可以很方便的將Java對象轉化成JSON格式的數據,也可以把JSON格式的數據轉化成Java對象。net.sf.jsonmaven提供了一些工具來幫助我們完成JSON數據的處理工作。
三、net.sf.jsonmaven的安裝
要在Maven工程中使用net.sf.jsonmaven,需要在項目的pom.xml文件的dependencies節點下添加如下依賴:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
由於該庫的名稱是json-lib,因此我們在使用時需要使用json-lib來代替net.sf.jsonmaven。
四、代碼示例
1.將Java對象轉化成JSON格式的數據
JSONObject jsonObj = new JSONObject();
jsonObj.put("name", "Tom");
jsonObj.put("age", 18);
jsonObj.put("address", "Beijing");
String jsonString = jsonObj.toString();
System.out.println(jsonString);
輸出結果為:
{"name":"Tom","age":18,"address":"Beijing"}
2.將JSON格式的數據轉化成Java對象
String jsonStr = "{\"name\":\"Tom\",\"age\":18,\"address\":\"Beijing\"}";
JSONObject jsonObject = JSONObject.fromObject(jsonStr);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
String address = jsonObject.getString("address");
System.out.println(name + " " + age + " " + address);
輸出結果為:
Tom 18 Beijing
3.將Java對象轉化成JSON格式的數據(含List)
List<Person> list = new ArrayList<Person>();
Person person1 = new Person("Tom", "Beijing", 18);
Person person2 = new Person("Jerry", "Shanghai", 20);
list.add(person1);
list.add(person2);
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray.toString());
輸出結果為:
[{"name":"Tom","address":"Beijing","age":18},{"name":"Jerry","address":"Shanghai","age":20}]
4.將JSON格式的數據轉化成Java對象(含List)
String jsonStr = "[{\"name\":\"Tom\",\"address\":\"Beijing\",\"age\":18},{\"name\":\"Jerry\",\"address\":\"Shanghai\",\"age\":20}]";
JSONArray jsonArray = JSONArray.fromObject(jsonStr);
List<Person> list = JSONArray.toList(jsonArray, new Person(), new JsonConfig());
for(Person person : list) {
System.out.println(person.getName() + " " + person.getAge() + " " + person.getAddress());
}
輸出結果為:
Tom 18 Beijing
Jerry 20 Shanghai
五、總結
net.sf.jsonmaven是一個簡單易用的Java實現JSON的庫,方便了Java程序員的編程工作。通過本文的介紹,我們可以看到該庫能夠很方便地將Java對象轉化成JSON格式的數據存儲,並且也能夠將JSON格式的數據轉化成Java對象,方便我們在Java程序中進行操作。同時,為了方便在Maven工程中使用,我們也介紹了如何在pom.xml文件的dependencies節點添加依賴。
原創文章,作者:TWTJ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143748.html