Descargar Gson desde Github: https://github.com/google/gson
La aplicación de Gson incluye principalmente dos funciones de conversión Tojson y Fromjson. Antes de usar esta conversión de objeto, debe crear la categoría de objeto y sus miembros para convertir con éxito la cadena JSON en el objeto correspondiente.
Ejemplos de clase {private int responde1 = 100; String privado Respuesta2 = "¡Hola mundo!"; Ejemplos () {} // constructor predeterminado}Serializar objetos de Java en cuerdas JSON
Ejemplos Ejemplo1 = nuevos ejemplos (); Gson gson = new Gson (); Cadena json = gson.tojson (ejemplo1);
El resultado JSON será
{"Respuesta1": 100, "Respuesta2": "¡Hola mundo!"}Deserializar las cadenas JSON en los objetos Java correspondientes
Ejemplos Ejemplo2 = Gson.FromJson (JSON, Ejemplos.class);
==> Ejemplo2 es el mismo que el ejemplo1
El objeto Ejemplo1 se serializa en una cadena JSON a través de TOJSON, y luego declara que un objeto Ejemplo2 se deserializa en un ejemplo2 a través de JSON después de recibir JSON. Por lo tanto, el ejemplo1 es el mismo que el ejemplo2.
Ejemplo:
import java.util.arrayList; importar java.util.arrays; import java.util.collection; import java.util.hashmap; import java.util.map; import com.google.gson.gson; import com.google.gson.reflect.typetoken; Usuario de clase {Usuario público (nombre de cadena, int Age, StringBuffer Sex, Boolean Ischild) {this.name = name; this.age = edad; this.sex = sexo; this.ischild = ischild; } nombre de cadena privada; edad privada int; Sexo privado Stringbuffer; Ischild privado booleano; public String toString () {return "{name ="+name+"; Age ="+Age+"; sex ="+sex+"; ischild ="+ischild+"}"; } public int hashcode () {return name.hashCode ()*100+edad; }} clase pública gsontest {public static void main (string [] args) {gson gson = new Gson (); System.out.println ("1 Conversión del frijol ordinario ******************************"); System.out.println ("Convertir un frijol a una cadena JSON->"); Usuario user1 = nuevo usuario ("fengjie", 12, new StringBuffer ("desconocido"), verdadero); System.out.println ("User1 antes de la conversión"+user1); Cadena json = gson.tojson (user1); System.out.println ("Objeto de usuario a JSON String, json ==="+json); System.out.println ("***************************"); System.out.println ("Convertir una cadena JSON a Bean->"); Usuario user2 = gson.fromjson (json, user.class); System.out.println ("Convertir a user2 =="+user2); System.out.println (); System.out.println ("Convertir a 2Collection Collection *****************************************"); System.out.println ("Convertir una colección de la lista de Bean a una cadena JSON->"); Colección <serem> UserList1 = new ArrayList <Serer> (); for (int i = 0; i <3; i ++) {user user = new user ("ruhua", 10+i, new StringBuffer ("masculino"), falso); UserList1.Add (usuario); } json = gson.tojson (userList1); System.out.println ("El objeto de recopilación de la lista del usuario se convierte en una cadena JSON, JSON ==="+JSON); System.out.println ("***************************"); System.out.println ("Convertir una cadena JSON en una colección de listas de frijoles->"); Colección <serem> userList2 = gson.fromjson (json, nueva typetoken <colección <serem>> () {}. GetType ()); System.out.println ("Convertir en la colección de usuarios, userList2 ="+userList2); System.out.println (); System.out.println ("Conversión de 3Array Array *******************************"); System.out.println ("Convertir una matriz de bean en una cadena JSON->"); Usuario [] userArray1 = nuevo usuario [3]; for (int i = 0; i <userArray1.length; i ++) {userArray1 [i] = new User ("Hidden", 20, nuevo StringBuffer ("Shemale"), true); } json = gson.tojson (userArray1); System.out.println ("El objeto de matriz del usuario se convierte en una cadena JSON, JSON ==="+JSON); System.out.println ("****************************"); System.out.println ("Convertir una cadena JSON a un objeto de matriz de frijoles>"); User [] userArray2 = gson.fromjson (JSON, new typetoken <user []> () {}. GetType ()); System.out.println ("Convertir al objeto de matriz del usuario, UserArray2 ="+Arrays.ToString (UserArray2)); System.out.println (); System.out.println ("Convertir 4map *******************************"); System.out.println ("Convertir un mapa de frijoles a una cadena JSON->"); Map <string, user> map1 = new Hashmap <String, user> (); para (int i = 0; i <3; i ++) {map1.put (""+(i+10), userArray1 [i]); } json = gson.tojson (map1); System.out.println ("La colección de mapas del usuario se convierte en cadenas JSON, JSON ==="+JSON); System.out.println ("***************************"); System.out.println ("Convertir una cadena JSON a un objeto de matriz de frijoles>"); Map <string, user> map2 = gson.fromjson (json, new typetoken <map <string, user >> () {}. GetType ()); System.out.println ("Convertir al objeto de matriz del usuario, map2 =="+map2); }}Resultados de ejecución:
1 Conversión del frijol ordinario ************************************************************************************************************************************************************************************************e de frijoles. json === {"nombre": "fengjie", "edad": 12, "sexo": "desconocido", "ischild": verdadero} ******************************************************************** Conversión *************************************************** Convertir una colección de la lista de Bean en una cadena de JSON-> El objeto de colección de la lista del usuario en una cadena JSON, json === [{"nombre": "ruhua", "edad": 10, "sexo": "masculino", "ischild": falso}, {"nombre": "ruhua", "edad": 11, "sexo": "masculino", "ischild": falso}, {"nombre": "ruhua", "edad": 12, "sexo": "masculino", "ischild": falso ":] ************************************************************************** {name = ruhua; edad = 12; sexy = macho; ischild = false}] 3Array Conversion *******************************************************************************************************************************************************************************************************************************************************A json === [{"nombre": "hibi", "edad": 20, "sexo": "shemale", "ischild": true}, {"nombre": "oculto", "edad": 20, 20, "Sex": "Shemale", "Ischild": True}, {"Nombre": "Hidden", "Age": 20, "Sex": "Shemale", "Ischild": True}] ********************************************************* Convertir una cadena JSON a un objeto de matriz de un frijol-> Convirtir al objeto de matriz del usuario al usuario, UserArray2 = [{name = Hidden; Age = 20; Sex = Hidden; ischild = true}, {name = hibiscus; edad = 20; sex = hemale; isChild = verdadero}, {name = hibiscus; edad = 20; sex = hemale; ischild = true}] 4map conversión **************************************************************************** La conversión de un bean a un bean string:> el mapa del usuario de la cadena de usuarios. json === {"10": {"Nombre": "Hibi", "Age": 20, "Sex": "Shemale", "Ischild": True}, "11": {"Nombre": "Hibibi", "Age": 20, "Sex": "Shemale", "Ischild": True}, "12": {"Nombre": "Hibibi", "Age": 20, "Sex": "Shemale", "Ischild": True}} ***************************************************************************************************************************************************************************************************************************************Enga 12 = {name = Hibibi; edad = 20; sexo = hermaid; ischild = true}}