ดาวน์โหลดและปรับใช้ GSON
ที่อยู่หน้า Github ของ GSON: https://github.com/google/gson
ก่อนที่จะใช้ GSON API ในการทำงานคุณต้องดาวน์โหลดไลบรารี (ไฟล์ jar) และรวมไว้ใน classpath ห้องสมุดพร้อมกับซอร์สโค้ดและเอกสาร Java สามารถดาวน์โหลดได้จาก http://code.google.com/p/google-gson/downloads/list หลังจากดาวน์โหลดแล้วเพิ่ม GSON- <Sersion> .JAR ไปยัง ClassPath สำหรับผู้ที่ต้องการใช้ Maven Management Dependencies (ไฟล์ JAR) เพิ่มการพึ่งพาต่อไปนี้ใน pom.xml
<Ederency> <roupId> com.google.code.gson </groupId> <ratifactId> GSON </artifactId> <version> 2.2.4 </เวอร์ชัน> </dermentsing>
ต้องแก้ไข <Sersion> 2.2.4 </Sersion> ตัวอย่างโค้ดทั้งหมดในบทความนี้ใช้เวอร์ชันที่ระบุไว้ข้างต้น สามารถดูสำเนาของไฟล์ pom.xml ได้ที่นี่
หากไลบรารีนี้ใช้สำหรับเว็บแอปพลิเคชันตรวจสอบให้แน่ใจว่าได้ทำการคัดลอกในโฟลเดอร์ Web-Inf/LIB อีกวิธีหนึ่งคือไลบรารี GSON สามารถวางไว้บนแอปพลิเคชันเซิร์ฟเวอร์เพื่อให้สามารถใช้กับเว็บแอปพลิเคชัน
ตัวอย่าง
นี่คือตัวอย่างง่ายๆ:
บุคคลชั้นเรียนสาธารณะ {ชื่อสตริงส่วนตัว; อายุ int ส่วนตัว; / ** * @return ชื่อ */ สตริงสาธารณะ getName () {ชื่อคืน; } / ** * @param ชื่อชื่อที่จะตั้งค่า * / โมฆะสาธารณะ setName (ชื่อสตริง) {this.name = name; } / ** * @return อายุ * / public int getage () {return Age; } / ** * @param อายุอายุที่จะตั้งค่า * / public void setage (อายุ int) {this.age = อายุ; } @Override Public String ToString () {return name + ":" + Age; -เอนทิตีง่ายมากมีสองสาขา แน่นอนฟิลด์ในเอนทิตียังสามารถเป็นรายการหรือตั้งค่าประเภท
GSON GSON = new GSON (); รายการ <person> บุคคล = new ArrayList <Person> (); สำหรับ (int i = 0; i <10; i ++) {บุคคล p = คนใหม่ (); P.SetName ("ชื่อ" + i); P.Setage (i * 5); person.add (p);} string str = gson.tojson (บุคคล);รหัสข้างต้นมุ่งเน้นไปที่วัตถุ GSON ซึ่งให้วิธี TOJASON () เพื่อแปลงวัตถุเป็นสตริง JSON ค่าวัตถุ STR ของรหัสข้างต้นคือ:
[{"name":"name0","age":0},{"name":"name1","age":5},{"name":"name2","age":10},{"name":"name3","age":15},{"name":"name4","age":20},{"name":"name5","age":25},{"name":"name6","age":30},{"name":"name7","age":35},{"name":"name8","age":40},{"name":"name9","age":45}]
ข้อมูล JSON มาตรฐานมากง่ายมากฮ่าฮ่า
มาดูการ deserialization ของ GSON GSON จัดเตรียมวิธีการ FARMJSON () ในการใช้วิธีการจากวัตถุที่เกี่ยวข้องกับ JSON ไปยังเอนทิตี Java
ในแอปพลิเคชันประจำวันเรามักจะพบกับสองสถานการณ์: การแปลงเป็นวัตถุเอนทิตีเดี่ยวและแปลงเป็นรายการวัตถุหรือโครงสร้างอื่น ๆ
มาดูอันแรก:
ตัวอย่างเช่นสตริง JSON คือ:
[{"ชื่อ": "name0", "อายุ": 0}]รหัส:
บุคคล = gson.fromjson (str, person.class);
ระบุพารามิเตอร์สองตัวคือสตริง JSON และประเภทของวัตถุที่ต้องแปลง
ประเภทที่สองถูกแปลงเป็นประเภทรายการ:
รหัส:
รายการ <person> ps = gson.fromjson (str, typetoken ใหม่ <list <person> () {}. getType ()); สำหรับ (int i = 0; i <ps.size (); i ++) {person p = ps.get (i); System.out.println (p.toString ());}คุณจะเห็นได้ว่ารหัสด้านบนใช้ TypEtoken ซึ่งเป็นตัวแปลงประเภทข้อมูลที่จัดทำโดย GSON และสามารถรองรับการแปลงประเภทการรวบรวมข้อมูลที่หลากหลาย
มีการใช้ GSON ขั้นพื้นฐานมากมาย สำหรับคำอธิบายประกอบคุณสามารถอ้างถึงเอกสารอย่างเป็นทางการของ GSON ฉันหวังว่ามันจะเป็นประโยชน์กับนักเรียนที่เป็นผู้เริ่มต้นใน Java และ GSON