簡述JSON.parseObject和JSON.toJsonString
最近在看公司專案原始碼,竟然對JSON.parseObject和JSON.toJsonString的這兩個方法感到特別陌生(自己較笨,不能代表其他人的水平),在這裡回顧一下,順便記錄下來,以便後續檢視。
首先,說一下json的格式。JSON語法是JavaScript物件表示法語法的子集。
- 資料在名稱/值中
- 資料之間用逗號分隔
- 花括號儲存物件
- 方括號儲存陣列
下面來演示是如何用的。
首先引入fastjson的jar包
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sht</groupId> <artifactId>SpringLoaderTest</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>SpringLoaderTest</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency> </dependencies> </project>
然後建立java物件
package com.sht.demo20180623; /** * 用於測試json的類 * @author SHT * */ public class JsonStudent { private String name; private int age; private String sex; @Override public String toString() { return "JsonStudent [name=" + name + ", age=" + age + ", sex=" + sex + "]"; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } }
測試類
package com.sht.demo20180623; import com.alibaba.fastjson.JSON; /** * 主要用來闡述Json.parseObject(String str, Class<?> c)和Json.toJsonString(Class<?> c) * @author SHT * */ public class JsonDemo { public static void main(String[] args) { String s = "{'name':'sunhaiting','age':'30','sex':'male'}"; JsonStudent js = JSON.parseObject(s, JsonStudent.class); System.out.print("將json字串轉化為物件:"); System.out.println(js.toString()); String jsonString = JSON.toJSONString(js); System.out.print("將json物件轉化為json字串:"); System.out.println(jsonString); } }
輸出結果
將json字串轉化為物件:JsonStudent [name=sunhaiting, age=30, sex=male]
將json物件轉化為json字串:{"age":30,"name":"sunhaiting","sex":"male"}
這裡可能有人會有疑問:如果json字串中內容與java物件中的內容不是一一對應的話會怎麼處理呢?對兩個方法分別進行說明。
JSON.parseObject(String str, Class<?> c) 將json字串轉化為物件時,如果str中欄位不在java物件中,則多餘的欄位忽略;如果str中欄位少於java物件中,則轉化後的java物件中響應欄位為空。
JSON.toJsonString(Class<?> c) 同理。
相關推薦
簡述JSON.parseObject和JSON.toJsonString
最近在看公司專案原始碼,竟然對JSON.parseObject和JSON.toJsonString的這兩個方法感到特別陌生(自己較笨,不能代表其他人的水平),在這裡回顧一下,順便記錄下來,以便後續檢視。 首先,說一下json的格式。JSON語法是JavaScri
JSON.parseObject和JSON.toJSONString詳細說明
例如:首先用maven引入fastjson(java有四種JSON解析方法,感興趣的可以瞭解下) <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</ar
瞭解JSON.parseObject(String str)/JSONObject.parseObject()和JSON.toJSONString()的功能
今天用到了JSON物件和JSON 字串之間的相互轉換,藉此記錄一下心得。 基礎語法: JSON字串轉化成JSON物件 JSONObject jsonobject = JSON.parseObject(str); 或者 JSONObject jsonobject = JS
JSON.parseObject將json轉換為物件,包含三層物件轉換和巢狀轉換
public class JSONTest { public static void main(String[] args){ String json1="{\n" + " \"name\": \"skynet\"
python json.load和json.loads的區別
json對象 ict 字串 pen 區別 json bsp 實現 寫入文件 load和loads都是實現“反序列化”,區別在於(以Python為例): loads針對內存對象,即將Python內置數據序列化為字串 如使用json.dumps序列化的對象d_json=js
JSON.parse()和JSON.stringify()
結果 console str ted pro att name 字符串 tor parse用於從一個字符串中解析出json對象,如 var str = ‘{"name":"huangxiaojian","age":"23"}‘ 結果: JSON.parse(str)
JSON.stringify()和JSON.parse()分別是什麽
string gif obj bject 什麽 是什麽 分別是 object 對象 JSON.stringify() 從一個對象中解析出字符串 JSON.stringify({"a":"1","b":"2"}) 結果是:"{"a":"1","b":"2"}" JSON.
你不知道的JSON.stringify和JSON.parse
mar png 遍歷 bool 簡單的 log 之間 表示法 名稱 json是JavaScript 對象表示法(JavaScript Object Notation),是一種簡單的數據格式,類似於XML,其格式為名稱/值對,數據用逗號隔開,名稱必須用雙引號括起來。例如:
python中json.dump() 和 json.dumps() 有那些區別?
其他 reading 如果 data logs with open 序列 pos cme 以下內容摘自:《Python Cookbook》 json 模塊提供了一種很簡單的方式來編碼和解碼JSON數據。 其中兩個主要的函數是 json.dumps() 和 json.load
JSON.parse() 和 JSON.stringify()的簡單介紹
文本 原來 local 也不能 將不 一次 json格式 iter ati 參考地址: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse
JSON 字串和 JSON 物件之間的相互轉換
一、什麼是 JSON JSON 即 JavaScript Object Notation ,是一種輕量級的資料互動格式。 易於人閱讀和編寫,同時也易於機器解析和生成。 JSON 完全獨立於語言之外,但語法上借鑑了 JavaScript。 輕量級:相對於XML,JSON
extjs4中json字串和json物件轉換
用extjs也有一段時間了,但有些東西就是記不住,就比如json字串和json物件的轉換,我還是把它記下來。 將json字串轉為json物件 var str = '{ "name": "張三", "age": "23" }' var obj = JSON.parse(str); 將j
json.dump()和json.load()
div register from dump write mps import word load import json,time # save data to json file def store(data): with open(‘data.json‘
python中json檔案處理涉及的四個函式json.dumps()和json.loads()、json.dump()和json.load()的區分
一、概念理解 1、json.dumps()和json.loads()是json格式處理函式(可以這麼理解,json是字串) (1)json.dumps()函式是將一個Python資料型別列表進行json格式的編碼(可以這麼理解,json.dumps()函式是將字典轉化為字串) (
JSON物件和JSON字串之間的轉換
JSON物件轉JSON字串 var obj = {"a":"1", "b":[{"c":"3"},{"d":"4"}]}; var str = JSON.stringify(obj); JSON字串轉JSON物件 var str = '{"a":"1","b":[{"
1python中json檔案處理涉及的四個函式json.dumps()和json.loads()、json.dump()和json.load()的區分
python中json檔案處理涉及的四個函式json.dumps()和json.loads()、json.dump()和json.load()的區分 一、概念理解 1、json.dumps()和json.loads()是json格式處理函式(可以這麼理解,json是字串) (1)json
springMVC——控制層傳回JSON物件和JSON字串
1、傳回JSON物件 實體類 private String username; private String password; private List<String> daylist = new ArrayList<String>();
Python中json.dumps()和json.dump()區別
Python內建的json 模組提供了一種非常完善的Python物件到JSON格式的轉換。 其中 json.dumps() 和 json.loads() , 要比其他序列化函式庫如pickle的
JSON.parse和JSON.stringify 引數詳解
JSON.parse和JSON.stringify這兩個瀏覽器自帶(IE6/7除外)的方法平常我們經常用到,但是一般都只是用到了他們的第一個引數,比如字串轉物件:JSON.parse('{}') 物件轉字串:JSON.stringify({}) 今天特意看了下這
jQuery拼接json字串和json陣列(自定義Jsonp)
/** myJsonp:json陣列 myJsonp1:沒有複選框時用的方法,json字串 myJsonp2:有複選框時用的方法,json字串 myJsonp3:有複選框時和有編輯器時用的方法,json字串 */ (function ($) { //序列化和返序列化