fastjson簡單使用
阿新 • • 發佈:2020-09-04
fastjson是阿里巴巴的開源JSON解析庫,它可以解析JSON格式的字串,支援將Java Bean序列化為JSON字串,也可以從JSON字串反序列化到JavaBean。
一. Maven依賴
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.73</version> </dependency>
二. 簡單使用
fastjson的API十分簡潔。
String text = JSON.toJSONString(obj); //序列化 VO vo = JSON.parseObject("{...}", VO.class); //反序列化 //如果不想建立類還可以使用 JsonObject JsonObject jsonObject = JSON.parseObject("{...}"); jsonObject.getXXX(String key);
例子:
package study.yan.fastjson.demo; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject;import java.io.Serializable; public class Program { public static void main(String[] args) { // JSONObject jsonObject = JSON.parseObject("{\"callback_command\": \"CallBackBeforeP2PChatReq\",\"app_id\": 1332142413,\"from_uid\": 3504372018,\"to_uid\": 3711934089,\"uuid\": \"1d7a7d35-6029-4d79-890f-a0b731071836\",\"extension\": \"{\\\"hasPlayed\\\":false,\\\"isPrivateAlbum\\\":0,\\\"needPay\\\":\\\"1\\\",\\\"needTranslate\\\":false,\\\"reply5Min\\\":1,\\\"sendSysLanguage\\\":\\\"in\\\",\\\"translateText\\\":\\\"\\\"}\",\"msg_content\": {\"text\": {\"text\": \"if can i call\"}}}");// String msg_content = jsonObject.getString("msg_content"); // System.out.println(msg_content); // MsgContent msgContent = JSON.parseObject(msg_content, MsgContent.class); // System.out.println(msgContent); // MsgContentText text = msgContent.getText(); // System.out.println(text); JSONObject jsonObject = JSON.parseObject("{\"callback_command\": \"CallBackBeforeP2PChatReq\",\"app_id\": 1332142413,\"from_uid\": 3752868060,\"to_uid\": 3455696810,\"uuid\": \"af9d2eff-2a84-4d1d-922b-2273facd97a1\",\"extension\": \"{\\\"hasPlayed\\\":false,\\\"isPrivateAlbum\\\":0,\\\"needPay\\\":\\\"1\\\",\\\"needTranslate\\\":false,\\\"reply5Min\\\":1,\\\"sendSysLanguage\\\":\\\"ar\\\",\\\"translateText\\\":\\\"\\\"}\",\"msg_content\": {\"image\": {\"original_width\": 966,\"original_height\": 1288,\"thumbnail_url\": \"https://cim-oss-ap-south-1-1332142413.bs2dl.yy.com/3752868060/c6608888-0ee6-41a8-b412-55821a2391b5.png?x-oss-process=image/resize,m_lfit,h_300,w_300\",\"original_url\": \"https://cim-oss-ap-south-1-1332142413.bs2dl.yy.com/3752868060/c6608888-0ee6-41a8-b412-55821a2391b5.png\"}}}"); String msg_content = jsonObject.getString("msg_content"); System.out.println(msg_content); MsgContent msgContent = JSON.parseObject(msg_content, MsgContent.class); System.out.println(msgContent); MsgContentText text = msgContent.getText(); System.out.println(text); MsgContentImage image = msgContent.getImage(); System.out.println(image); } public static class MsgContent{ private MsgContentText text; private MsgContentImage image; public MsgContentText getText() { return text; } public void setText(MsgContentText msgContentText) { this.text = msgContentText; } public MsgContentImage getImage() { return image; } public void setImage(MsgContentImage image) { this.image = image; } @Override public String toString() { return "MsgContent{" + "text=" + text + ", image=" + image + '}'; } } public static class MsgContentText implements Serializable{ private String text; public String getText() { return text; } public void setText(String text) { this.text = text; } } static class MsgContentImage implements Serializable { private int original_width; private int original_height; private String thumbnail_url; private String original_url; public int getOriginal_width() { return original_width; } public void setOriginal_width(int original_width) { this.original_width = original_width; } public int getOriginal_height() { return original_height; } public void setOriginal_height(int original_height) { this.original_height = original_height; } public String getThumbnail_url() { return thumbnail_url; } public void setThumbnail_url(String thumbnail_url) { this.thumbnail_url = thumbnail_url; } public String getOriginal_url() { return original_url; } public void setOriginal_url(String original_url) { this.original_url = original_url; } @Override public String toString() { return "MsgContentImage{" + "original_width=" + original_width + ", original_height=" + original_height + ", thumbnail_url='" + thumbnail_url + '\'' + ", original_url='" + original_url + '\'' + '}'; } } }