JSON Lightweight Data Exchange -Format
Im Vergleich zu XML pariert JSON schneller und verfügt über kleinere Dokumente.
JSON -Format
{Attributname: Attributwert, Attributname: Attributwert, ...}
Der Typ des Attributnamens kann Zeichenfolge, Nummer, Boolesche, Null, Objekt sein und der Attributname muss in doppelten Anführungszeichen eingeschlossen sein. Wenn der Attributwert eine Zeichenfolge ist, muss er auch in Doppelzitaten eingeschlossen sein.
JSON repräsentiert ein Array
Format: [Wert, Wert, Wert], wobei Wert ein grundlegender Datentyp oder Objekttyp oder Array -Typ sein kann
Array type [{"Name": "Yangjq", "Alter": 22}, {"Name": "andreny", "Alter": 21}];Objekttyp ["Name": "Andreny", "Hobby": ["Sing", "Tanz", "Eat"]]
Konvertieren
Graph LRJSON String -> JavaScript -Objekt
1. Verwenden Sie die native Funktion von JavaScript: eval (), diese Methode ist jedoch gefährlich und Sie müssen bei der Verwendung vorsichtig sein.
var str = {"name": "yangjq", "Alter": 23}; var obj = eval ("("+str+")"); alert (obj.name);2. Verwenden Sie die von dem native Objekt JSON bereitgestellte Parse () -Methode. Wenn dieses Objekt ungültig ist, bedeutet dies, dass Ihre Browserversion zu niedrig ist! ! !
var str = {"name": "andreny", "Alter": 22}; var obj = json.Parse (str); alert (obj.name);3. Methode zum Hinzufügen von Zeichenfolgen mit der JSON.JS -Datei.
var str = {"name": "niedlich erha", "Alter": 9}; var obj = str.parsejson (); alert (obj.name);Konvertieren Sie JSON -Objekt in JSON String
Graph LRJSON -Objekt -> JSON String
Verwenden der API von JSON: JSONObject, Methode von JsonArray
// Die erste Methode EMP = new EMP ("1", "andreny", "Man"); str2 = obj.json.stringify ();Bei AJAX beim Senden von Anfragen geht es um Ausgeschnittene
== Hinweis ==: Beim Senden einer Anforderung wird das vom IE -Browser bereitgestellte AJAX -Objekt zuerst prüfen, ob es auf die Adresse zugegriffen hat. Wenn es darauf zugegriffen hat, sendet der Browser die Anfrage nicht mehr.
Mechanismen für verschiedene Browser zur Behandlung von Cache
Chrome sendet weiterhin Anfragen
Firefox sendet weiterhin Anfragen
IE Browser sendet keine Anfragen mehr
Wie kann der Browser daran hindert, Anfragen wegen Cache zu senden?
Fügen Sie nach der Anforderungsadresse eine Zufallszahl hinzu
xhr.open ('get', 'getNumber.do?+math.random(), TRUE);Senden Sie eine Postanfrage
Einige Fragen zur Synchronisation
Nach dem Versenden einer Synchronisierungsanforderung muss der Browser warten, bis die Antwort des Servers ankommt, bevor er weiter auf der Seite betrieben wird. Wenn AJAX eine Synchronisationsanforderung sendet, sperrt der Browser die aktuelle Seite.
Testcode
Paket yangjq.test; import Java.util.ArrayList; import Java.util.list; import net.sf.json.jsonarray; import net.sf.json.jsonObject; importieren yangjq.entity.friend.friend; öffentliche Klasse jSontest {public static void main (Streich [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args [] args) importieren. {System.out.println ("-------------------------------------"); test1 (); test2 (); test3 (); test4 ();} // Java-Objekt in JSON String public static void test1 () {Freund f = new Friend (); f.setname ("andreny"); obj = jsonObject.fromObject (f); System.out.println (obj.toString ());} // JSON -Sammlung in JSON String public static void test2 () {list <friend> fs = new ArrayList <friend> (); für (int i = 0; i <10; i ++) {Freund f = neuer Freund (); F.SetName ("yangjq"+i); F.Setage (12+i); Ja = jsonArray.fromObject (fs); System.out.println ("------------/n"+fs); JSONSON = "{/" Name/":/" andreny/",/" Age/": 22}"; JsonObject.tobean (OBJ, Freund.Class); System.out.println ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ "{/" name/":/" andreny/",/" Alter/": 23}]"; JsonArray.tocollection (obj, Freund.Class); System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Auslaufergebnisse:
--------------- {"Alter": 23, "Name": "Andreny"} ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- [name = yangjq8, Alter = 20], Freund [Name = yangjq9, Alter = 21]] [{"Alter": 12, "Name": "yangjq0"}, {"Alter": 13, "Name": "Yangjq1"}, {"Alter": 14, "Name": "Yang JQ2 "}, {" Alter ": 15," Name ":" Yangjq3 "}, {" Alter ": 16," Name ":" Yangjq4 "}, {" Alter ": 17," Name ":" yangjq5 " },{"age":18,"name":"yangjq6"},{"age":19,"name":"yangjq7"},{"age":20,"name":"yangjq8"},{"age":21,"name":"yangjq9"}]--------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------— ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- [name = andreny, Alter = 22] --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/ -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Zusammenfassen
In dem oben genannten Artikel geht es um diesen Artikel, in dem JSONs Datenaustausch-, Zwischenspeichern- und Synchronisationsprobleme erörtert werden. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!