Faça o download do GSON do Github: https://github.com/google/gson
O aplicativo do GSON inclui principalmente duas funções de conversão Tojson e Fromjson. Antes de usar essa conversão de objetos, você precisa criar a categoria de objeto e seus membros para converter com êxito a string json no objeto correspondente.
classe Exemplos {private int Answer1 = 100; Private String Answer2 = "Hello World!"; Exemplos () {} // construtor padrão}Serialize objetos java em strings json
Exemplos exemplo1 = novo exemplos (); Gson gson = new gson (); String json = gson.tojson (Exemplo1);
O resultado JSON será
{"Answer1": 100, "Answer2": "Hello World!"}Desserialize JSON Strings em objetos Java correspondentes
Exemplos exemplo2 = gson.fromjson (json, exemplos.class);
==> Exemplo2 é o mesmo que exemplo1
O Exemplo de Objeto1 é serializado em uma string json através de Tojson e depois declara que um exemplo de objeto2 é desserializada em um exemplo2 através de Fromjson após receber JSON. Portanto, o exemplo1 é o mesmo que o exemplo2.
Exemplo:
importar java.util.arraylist; importar java.util.arrays; importar java.util.Collection; importar java.util.hashmap; importar java.util.map; importar com.google.gson.gson; importar com.google.gson.reflect.typetken; classe Usuário {public user (nome da string, idade int, stringbuffer sexo, boolean ischild) {this.name = name; this.age = idade; this.sex = sexo; this.ischild = isChild; } nome de string privado; private Int Age; sexo privado de stringbuffer; Ischild privado booleano; public string tostring () {return "{name ="+name+"; Age ="+Age+"; Sex ="+Sex+"; Ischild ="+Ischild+"}"; } public int hashCode () {return name.hashcode ()*100+idade; }} classe pública Gsontest {public static void main (string [] args) {gson gson = new gson (); System.out.println ("1 conversão do feijão comum *********************************"); System.out.println ("Converta um feijão em uma string json->"); Usuário usuário1 = novo usuário ("fengjie", 12, novo stringbuffer ("desconhecido"), true); System.out.println ("user1 antes da conversão"+user1); String json = gson.tojson (user1); System.out.println ("Objeto do usuário para JSON String, JSON ==="+JSON); System.out.println ("***************************"); System.out.println ("Converta uma string json em bean->"); Usuário usuário2 = gson.fromjson (json, user.class); System.out.println ("converta para user2 =="+user2); System.out.println (); System.out.println ("Converta para 2Collection Collection *********************************************"); System.out.println ("Converta a coleção de listas de um feijão em uma string json->"); Coleção <suser> userList1 = new ArrayList <suser> (); for (int i = 0; i <3; i ++) {usuário do usuário = novo usuário ("ruhua", 10+i, new StringBuffer ("masculino"), false); userlist1.add (usuário); } json = gson.tojson (userlist1); System.out.println ("O objeto de coleta de listas do usuário é convertido em uma string json, json ==="+json); System.out.println ("***************************"); System.out.println ("Converta uma string json em uma coleção de listas de feijões->"); Coleção <suser> userlist2 = gson.fromjson (json, new typeToken <coleção <suser>> () {}. GetType ()); System.out.println ("Converta para listar a coleção de usuários, userlist2 ="+userList2); System.out.println (); System.out.println ("Conversão de 3Array Array *********************************"); System.out.println ("Converta uma matriz de feijão em uma string json->"); Usuário [] userArray1 = novo usuário [3]; for (int i = 0; i <userArray1.length; i ++) {userArray1 [i] = new User ("Hidden", 20, new StringBuffer ("Travestim"), True); } json = gson.tojson (userArray1); System.out.println ("O objeto de matriz do usuário é convertido em uma string json, json ==="+json); System.out.println ("******************************"); System.out.println ("Converta uma string json em um objeto de matriz de Bean->"); Usuário [] userArray2 = gson.fromjson (json, new typeToken <user []> () {}. GetType ()); System.out.println ("Converta para o objeto da matriz do usuário, userArray2 ="+Arrays.toString (userArray2)); System.out.println (); System.out.println ("convert 4map *******************************"); System.out.println ("Converta o mapa de um feijão em uma string json->"); Mapa <string, usuário> map1 = new hashmap <string, user> (); for (int i = 0; i <3; i ++) {map1.put (""+(i+10), userArray1 [i]); } json = gson.tojson (map1); System.out.println ("A coleção de mapas do usuário se converte em strings json, json ==="+json); System.out.println ("***************************"); System.out.println ("Converta uma string json em um objeto de matriz de Bean->"); Mapa <string, usuário> map2 = gson.fromjson (json, new typeToken <map <string, usuário >> () {}. GetType ()); System.out.println ("Converta para o objeto da matriz do usuário, map2 =="+map2); }}Resultados em execução:
1 Conversão do feijão comum ******************************************************* JSON === {"Nome": "Fengjie", "Age": 12, "Sex": "Desconhecido", "Ischild": True} ***************************************************** Conversão *********************************************** json===[{"name":"Ruhua","age":10,"sex":"Male","isChild":false},{"name":"Ruhua","age":11,"sex":"Male","isChild":false},{"name":"Ruhua","age":12,"sex":"Male","isChild":false}] ******************************************************** Converta uma string json em uma coleção de feijões de lista -> convertem para a coleção de usuários, userlist2 = [{name = Ruhua; idade = 10; sexo = masculino; ischild = false}, {name = ruhua; idade; sexo; {nome = ruhua; idade = 12; sexo = masculino; isChild = false}] 3Array Matriz Conversão *************************************************************** json===[{"name":"hibi","age":20,"sex":"Shemale","isChild":true},{"name":"Hidden","age":20,"sex":"Shemale","isChild":true},{"name":"Hidden","age":20,"sex":"Shemale","isChild":true}] *************************************************** isChild = true}, {name = hibiscus; idade = 20; sex = hemale; ischild = true}, {name = hibiscus; idade = 20; sex = hemale; isChild = true}] 4Map conversão ******************************* JSON === {"10": {"Nome": "Hibi", "Age": 20, "Sex": "Shemale", "Ischild": True}, "11": {"Nome": "Hibibi", "Age": 20, "Sex": "Travestim", "Ischild": True}, "12": {"Nome": "Hibibi", "Age": 20, "Sex": "Transhemale", "Ischild": True}} ************************************************************* 12 = {nome = hibibi; idade = 20; sex = hermaid; ischild = true}}