JSON (Notation Object JavaScript) เป็นรูปแบบการแลกเปลี่ยนข้อมูลที่มีน้ำหนักเบาซึ่งง่ายต่อการอ่านและเขียนและยังง่ายต่อการแยกวิเคราะห์เครื่องและสร้าง เช่น XML มันเป็น "รูปแบบการถ่ายโอน" JSON ใช้รูปแบบข้อความที่เป็นอิสระจากภาษาการเขียนโปรแกรมซึ่งสะดวกสำหรับการส่งข้อมูลการจัดเก็บและการแลกเปลี่ยน
แอตทริบิวต์คลาส Encapsulation:
แอตทริบิวต์คลาสสาธารณะ {ID ส่วนตัว ID; ชื่อสตริงส่วนตัว; อายุ int ส่วนตัว; int public int getId () {return id;} โมฆะสาธารณะ setId (int id) {this.id = id;} สตริงสาธารณะ getName () {ชื่อคืน;} void setName (ชื่อสตริง) อายุ;}} อีกระดับการห่อหุ้ม GSONDATAANALYSIS:
คลาสสาธารณะ GSondataAnalysis {รายการส่วนตัว <attribute> รายการ; รายการสาธารณะ <แอตทริบิวต์> getList () {return list;} public void setlist (รายการ <attribute> รายการ) {this.list = list;}}}}ทดสอบวิธีหลัก:
/*** gson parses data json* @author foreverlover* @version 2015-04-19*/คลาสสาธารณะ gSnetest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {string stotalstring = "{/" รายการ/": [" +"{/" ID/":/" 1/" +"{/" id/":/" 2/",/" ชื่อ/":/" แต่งงาน/",/" อายุ/":/" 18/"}" +"]" gda.getList (). size (); i ++) {system.out.print ("หมายเลข id:" + gda.getList (). รับ (i) .getId () + ""); system.out.print ("ชื่อ:" gda.getList () gda.getList (). get (i) .getage ());}}}หมายเหตุ: เมื่อใช้คลาส GSON ให้เพิ่มแพ็คเกจ GSON.JAR ลงในโครงการ
ด้านล่างคือการแนะนำข้อมูลรูปแบบ Java เพื่อแยกวิเคราะห์ข้อมูล JSON
บางครั้งรูปแบบ JSON อาจใช้ในการส่งข้อมูลดังนั้นฉันจะแยกวิเคราะห์ข้อมูลที่ได้รับได้อย่างไร ต่อไปนี้เป็นสองวิธีในการแยกวิเคราะห์ข้อมูล JSON:
1. การวิเคราะห์ผ่าน gson ของ Google:
ข้อมูล JSON: stotalString = {"ข้อความ": "ความสำเร็จ", "ผลลัพธ์": [{"surveyId": "1", "surveyname": "b"} {surveyid ":" 2 "," surveyname ":" c "}]};
สองคลาส VO:
Public Class SurveyVo {Private String SurveyID; SurveyName ส่วนตัว; ข้อความสตริงส่วนตัว; สตริงสาธารณะ getMessage () {ข้อความกลับ;} โมฆะสาธารณะ setMessage (ข้อความสตริง) {this.message = ข้อความ;} public String getSurveyid () {return surveyid; surveyname;} โมฆะสาธารณะ setSurveyname (Surveyname String) {this.surveyname = surveyname;}} คลาสสาธารณะ surveylistvo {ข้อความสตริงส่วนตัว; รายการส่วนตัว <การสำรวจ> ผลลัพธ์ {ผลตอบแทนผลลัพธ์;} โมฆะสาธารณะ setResult (รายการ <SurveyVo> ผลลัพธ์) {this.result = result;}}แปลงรูปแบบ JSON เป็นประเภทวัตถุ:
คลาสสาธารณะ Fromgson () {stotalstring = {"ข้อความ": "ความสำเร็จ", "ผลลัพธ์": [{"surveyid": "1", "surveyname": "B"} {"SurveyId": "2", "Surveyname": "C"}}; gson.fromjson (stotalstring, surveylistvo.class); สำหรับ (int i = 0; i <surveylistvo.getResult (). size (); i ++) {system.out.print (surveylistvo.getResult () 1 //// 2System.out.print (surveylistvo.getResult (). get (i) .getSurveyname ()); พิมพ์: b /// csystem.out.print (surveylistvo.getMessage ());}}}2. การวิเคราะห์ผ่านแพ็คเกจ json-org.jar:
ข้อมูล JSON: stotalString = {"ข้อความ": "ความสำเร็จ", "ผลลัพธ์": [{"surveyId": "1", "surveyname": "b"} {surveyid ":" 2 "," surveyname ":" c "}]};
คลาส VO:
Public Class SurveyVo {Private String SurveyId; Surveyname String ส่วนตัว; String Public GetSurveyId () {return surveyId;} โมฆะสาธารณะ setSurveyId (การสำรวจสตริง) {this.surveyId = SurveyId;} Public String getSurveyname () {return surveyname;แปลงรูปแบบ JSON เป็นประเภทวัตถุ:
คลาสสาธารณะ Fromjson () {stotalstring = {"ข้อความ": "ความสำเร็จ", "result": [{"surveyid": "1", "surveyname": "b"} {"สำรวจ": "2", "surveyname": "c"}}; jsonobject json; json.getjsonarray ("ผลลัพธ์"); สำหรับ (int i = 0; i <results.length (); i ++) {surveyvo surveyvo = new SurveyVo (); jsonObject result = results.getJsonObject (i); system.out.println "+result.getString (" Surveyname ")); SurveyVo.SetSurveyId (result.getString (" SurveyId ")); SurveyVo.Setsurveyname (result.getString (" Surveyname "); Surveyvolist.add (Surveyvo);