Metode Alat: Tujuan dari artikel ini adalah untuk mengubah string JSON menjadi penyimpanan pasangan nilai-kunci peta, dan hanya menyimpan data node daun
Maven merujuk versi paket jar:
<dependency> <GroupId> org.json </groupid> <ArTifactId> JSON </artifactid> <version> 20090211 </version> </dependency>
Peralatan:
paket com.baofoo.admin.test; // impor com.alibaba.fastjson.jsonobject; impor lombok.extern.slf4j.slf4j; impor org.junit.test; impor org.json.*; impor java.util.*; /*** Dibuat oleh BF100 pada 2018/4/12. */ @Slf4j kelas publik testByCaoxNew {@test public void test1 () {coba {int a = 1/0; } catch (Exception e) {log.error ("Call Exception: {}", e); e.printstacktrace (); } System.out.println ("Ayo !!!"); } @Test public void test2 () melempar Exception {String str = "{/" result/":/" Success/",/" Message/":/" Success! /"}"; String str2 = "{hasil: sukses, pesan: sukses}"; // jsonObject jsstr = jsonobject.parseObject (str); // System.out.println (jsstr); JsonObject obj = new jsonObject (str); Stack <jsonobject> stobj = new stack <jsonobject> (); stobj.push (OBJ); Peta <string, object> resultMap = new HashMap <String, Object> (); Jsontomap (stobj, resultMap); Atur <string> keys = resultMap.keyset (); untuk (tombol string: tombol) {System.out.println (key+":"+resultMap.get (key)); }} / ** * @Author: SKS * @Description: Simpan data objek JSON di peta dalam bentuk pasangan nilai-kunci, hanya menyimpan node daun * @date: * / private static void jsontomap (stack <JsonObject> stobj, peta <string, objek> resultMap) lemparan pengecualian {if (st / null = ; } JsonObject json = stobj.pop (); Iterator it = json.keys (); while (it.hasnext ()) {string key = (string) it.next (); // Dapatkan nilai nilai objek nilai = json.get (key); //System.out.println(value); if (value instance dari jSonObject) {stobj.push ((jsonObject) value); // secara rekursif melintasi jsontomap (stobj, resultMap); } else {resultMap.put (key, value); } } } @Test public void test3() throws Exception{ String jsonStr ="{responseHeader:{status:0,QTime:0},spellcheck:{suggestions:{China:{numFound:9,startOffset:0,endOffset:2," + "suggestion:[Industrial and Commercial Bank of China, Chinese People, China International, China Agriculture, China Market, China Economy, Chinese People, China Siaran, budaya Cina]}}, " +" Kolasi: {Collation: Industrial and Commercial Bank of China}}} "; JsonObject obj = new jsonObject (jsonstr); Stack <jsonobject> stobj = new stack <jsonobject> (); stobj.push (OBJ); Peta <string, object> resultMap = new HashMap <String, Object> (); Jsontomap (stobj, resultMap); Atur <string> keys = resultMap.keyset (); untuk (tombol string: tombol) {System.out.println (key+":"+resultMap.get (key)); }}}Meringkaskan
Di atas adalah metode mengubah objek JSON menjadi pasangan nilai kunci peta yang diperkenalkan oleh editor. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!