如何使用Jackson解析JSON示例
導語:爲了方便大家Java的.學習,下面是小編給大家提供的如何使用Jackson解析JSON示例,大家可以參考閱讀,更多詳情請關注應屆畢業生考試網。
package ;
import ception;
import yList;
import Map;
import ator;
import edHashMap;
import ;
import ;
import ;
import Generator;
import ParseException;
import MappingException;
import ctMapper;
import NodeFactory;
public class JacksonTest {
private static JsonGenerator jsonGenerator = null;
private static ObjectMapper objectMapper = null;
private static User user = null;
public static void writeEntity2Json() throws IOException {
tln("使用JsonGenerator轉化實體爲json串-------------");
// writeObject可以轉換java對象,eg:JavaBean/Map/List/Array等
eObject(user);
tln();
tln("使用ObjectMapper-----------");
// writeValue具有和writeObject相同的功能
eValue(, user);
}
public static void writeList2Json() throws IOException {
List userList = new ArrayList();
(user);
User u = new User();
id(10);
name("archie");
pwd("123");
(u);
eValue(, userList);
}
public static void writeMap2Json() {
try {
Map map = new HashMap();
User u = new User();
id(10);
name("archie");
pwd("123");
("uid", id());
("uname", name());
("upwd", pwd());
tln("jsonGenerator");
eObject(map);
eValue(, map);
} catch (IOException e) {
tStackTrace();
}
}
public static void writeOthersJSON() {
try {
String[] arr = { "a", "b", "c" };
tln("jsonGenerator");
String str = "hello world jackson!";
// byte
eBinary(ytes());
// boolean
eBoolean(true);
// null
eNull();
// float
eNumber(2.2f);
// char
eRaw("c");
// String
eRaw(str, 5, 10);
// String
eRawValue(str, 5, 5);
// String
eString(str);
eTree(Node(str));
tln();
// Object
eStartObject();// {
eObjectFieldStart("user");// user:
eStringField("name", "jackson");// name:jackson
eBooleanField("sex", true);// sex:true
eNumberField("age", 22);// age:22
eEndObject();
eArrayFieldStart("infos");// infos:[
eNumber(22);// 22
eString("this is array");// this is array
eEndArray();// ]
eEndObject();// }
User u = new User();
id(5);
name("tom");
pwd("123");
umber(3.44);
// complex Object
eStartObject();// {
eObjectField("uid", u);// user:{bean}
eObjectField("infos", arr);// infos:[array]
eEndObject();// }
} catch (Exception e) {
tStackTrace();
}
}
/**
* JSON字符串轉換爲對象
*/
public static void readJson2Entity() {
String json = "{"uid":5,"uname":"tom","number":3.44,"upwd":"123"}";
try {
User acc = Value(json, s);
tln(id());
tln(acc);
} catch (JsonParseException e) {
tStackTrace();
} catch (JsonMappingException e) {
tStackTrace();
} catch (IOException e) {
tStackTrace();
}
}
/**
* JSON轉換爲List對象
*/
public static void readJson2List() {
String json = "[{"uid":1,"uname":"www","number":234,"upwd":"456"},"
+ "{"uid":5,"uname":"tom","number":3.44,"upwd":"123"}]";
try {
List> list = Value(
json, s);
tln(());
for (int i = 0; i < (); i++) {
Map map = (i);
Set set = et();
for (Iterator it = ator(); ext();) {
String key = ();
tln(key + ":" + (key));
}
}
} catch (JsonParseException e) {
tStackTrace();
} catch (JsonMappingException e) {
tStackTrace();
} catch (IOException e) {
tStackTrace();
}
}
/**
* JSON轉換爲數組對象
*/
public static void readJson2Array() {
String json = "[{"uid":1,"uname":"www","number":234,"upwd":"456"},"
+ "{"uid":2,"uname":"sdfsdf","number":4745,"upwd":"23456"}]";
try {
User[] arr = Value(json, User[]s);
tln(th);
for (int i = 0; i < th; i++) {
tln(arr[i]);
}
} catch (JsonParseException e) {
tStackTrace();
} catch (JsonMappingException e) {
tStackTrace();
} catch (IOException e) {
tStackTrace();
}
}
/**
* JSON轉換爲Map對象
*/
public static void readJson2Map() {
String json = "{"success":true,"A":{"address": "address2","name":"haha2","id":2,"email":"email2"},"+
""B":{"address":"address","name":"haha","id":1,"email":"email"}}";
try {
Map> maps = Value(json, s);
tln(());
Set key = et();
Iterator iter = ator();
while (ext()) {
String field = ();
tln(field + ":" + (field));
}
} catch (JsonParseException e) {
tStackTrace();
} catch (JsonMappingException e) {
tStackTrace();
} catch (IOException e) {
tStackTrace();
}
}
public static void main(String[] args) {
user = new User();
id(5);
name("tom");
pwd("123");
umber(3.44);
objectMapper = new ObjectMapper();
try {
//jsonGenerator = sonFactory()teJsonGenerator(, 8);
// writeEntity2Json();
// writeMap2Json();
// writeList2Json();
// writeOthersJSON();
// readJson2Entity();
// readJson2List();
// readJson2Array();
readJson2Map();
} catch (Exception e) {
tStackTrace();
}
}
}
======================================
package ;
public class User {
private int uid;
private String uname;
private String upwd;
private double number;
public double getNumber() {
return number;
}
public void setNumber(double number) {
er = number;
}
public int getUid() {
return uid;
}
public void setUid(int uid) {
= uid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
e = uname;
}
public String getUpwd() {
return upwd;
}
public void setUpwd(String upwd) {
= upwd;
}
相關文章
-
Node.js如何響應Ajax的POST請求並且保存爲JSON文件詳解
實現目的使用開發的前端應用,用戶與圖交互更改圖的內容後,如何在下一次加載的顯示上一次最後交互的內容?本文提供通過後端的程序提供一種最小化方案,作爲參考。開發環境後端:模塊:Express、bodyparser、fs前端:JQuery後端1、 -
javascript解析json實例
導語:JSON 語法是 JavaScript 語法的子集。下面的.是本站小編爲大家蒐集的javascript解析json實例,希望可以幫到大家。php生成json格式使用頁面代碼如下:alert(ONString());如果返回false說明沒數據js 代碼:代碼如下:fun -
Ajax使用JSON數據格式案例分析
JSON(JavaScriptObject Notation)一種簡單的數據格式,比xml更輕巧。JSON是JavaScript原生格式,這意味着在JavaScript中處理JSON數據不需要任何特殊的API或工具包。下面請看yjbys小編對Ajax使用JSON數據格式案例的分析。想 -
Spring Boot使用slf4j+logback記錄日誌配置詳解
本文主要介紹了Spring Boot 使用slf4j+logback記錄日誌配置,下面本站小編帶大家一起來看看詳細內容,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!學習新的東西最好從例子開始,只看文檔太枯燥, -
Chinas Liu to seek injury advice in US soon英語作文
hinas world 110m hurdles champion liu iang works out at a training session in inzhuang, shanghai, september 24, .[osports]the 25-year-old athens gold medallist will consult medical eperts in three cit -
java中Cookie被禁用後Session追蹤問題
這篇文章主要介紹了Java中Cookie被禁用後Session追蹤問題,非常不錯,具有參考借鑑價值,需要的朋友可以參考下一.服務器端獲取Session對象依賴於客戶端攜帶的Cookie中的JSESSIONID數據。如果用戶把瀏覽器的隱私級別調到最 -
Java中synchronized的使用實例
synchronized關鍵字,代表這個方法加鎖,相當於不管哪一個線程(例如線程A),運行到這個方法時,都要檢查有沒有其它線程B(或者C、D等)正在用這個方法,若有則要等正在使用synchronized方法的線程B(或者C、D)運行完這個方法後再 -
JavaScript如何實現JSON.stringify
又是一個學期即將畫上句點,我們緊張而忙碌的工作也將告一段落。回顧XX—2012學年上半學期團委組織部的工作,我們總結經驗,發現不足,爲下學期更好的完成組織交給的任務而做準備。一、組織部內部建設9月18日在之遠102, -
java與javascript之間json格式數據互轉詳解
javascript中對象與字符串的互轉對象轉爲字符串:通過de方法,這個是裏面的方法,引入到當前文件就可以了。字符串轉換爲對象:①使用de方法,同上,引入js就可以了。②jQuery中有個方法,$eJson也可以實現。java中json字符串與對象 -
Java中Websocket使用實例解析
在 WebSocket API,瀏覽器和服務器只需要要做一個握手的動作,然後,瀏覽器和服務器之間就形成了一條快速通道。兩者之間就直接可以數據互相傳送。下面小編給大家介紹Java中Websocket使用實例解析,歡迎閱讀! Java中Websoc