********************************************************
3.把java对象转换成json
在要使用的类里引入gson,import com.google.gson.Gson;,然后调用以下的代码
查看源代码打印帮助1 List rsList = new ArrayList();
2 Map map = new HashMap();
3 map.put("id","20");
4 map.put("name","Ruby");
5 rsList.add(map);
6 Gson gson = new Gson();
7 jsonStr = gson.toJson(rsList);
8 System.out.println("jsonStr="+jsonStr);
控制台将会打印出字符:[{"name":"Ruby","id":20}]
4.把json转换成java对象
例如把上面的json转换成java对象,则只需要用以下的代码:
查看源代码打印帮助1 <pre>Type listType = new TypeToken<ArrayList<Map>>(){}.getType();
2 ArrayList<Map> map = gson.fromJson(jsonData, listType);</pre>
*****************************************************************************************************
转换成功的例子
import java.net.Proxy.Type;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import com.google.gson.reflect.TypeToken;
public class JAVAjson {
/**
* @param args
*/
public static void main(String[] args) {
// List list=new ArrayList();
//储存的是map类型的值
// Map map = new HashMap();
//
// map.put("id","20");
//
// map.put("name","Ruby");
//
// list.add(map);
//
// Gson gson = new Gson();
//
// String jsonStr = gson.toJson(list);
//
// System.out.println("jsonStr="+jsonStr);
//
// java.lang.reflect.Type listType = new TypeToken<ArrayList<Map>>(){}.getType();
//
// ArrayList<Map> map1 = gson.fromJson(jsonStr, listType);
// System.out.println(map1.size());
// System.out.println(map1.get(0));
// System.out.println(map1.get(0).keySet()+">>>>>>>"+map1.get(0).values());
// for(Map m:map1){
// System.out.println(m.keySet()+">>>>>>>>"+m.values());
// }
//储存的是实体类
List<One> list=new ArrayList<One>();
One o=new One();
o.setName("sa");
o.setPwd("sa");
list.add(o);
//转换成json
Gson gson = new Gson();
String jsonStr = gson.toJson(list);
System.out.println("jsonStr="+jsonStr);
//转换成java对象
java.lang.reflect.Type listType = new TypeToken<ArrayList<One>>(){}.getType();
ArrayList<One> map1 = gson.fromJson(jsonStr, listType);
System.out.println(map1.size());
System.out.println(map1.get(0));
System.out.println(map1.get(0).getName()+">>>>>>>"+map1.get(0).getPwd());
for(One m:map1){
System.out.println(m.getName()+">>>>>>>>"+m.getPwd());
}
}
}
3.把java对象转换成json
在要使用的类里引入gson,import com.google.gson.Gson;,然后调用以下的代码
查看源代码打印帮助1 List rsList = new ArrayList();
2 Map map = new HashMap();
3 map.put("id","20");
4 map.put("name","Ruby");
5 rsList.add(map);
6 Gson gson = new Gson();
7 jsonStr = gson.toJson(rsList);
8 System.out.println("jsonStr="+jsonStr);
控制台将会打印出字符:[{"name":"Ruby","id":20}]
4.把json转换成java对象
例如把上面的json转换成java对象,则只需要用以下的代码:
查看源代码打印帮助1 <pre>Type listType = new TypeToken<ArrayList<Map>>(){}.getType();
2 ArrayList<Map> map = gson.fromJson(jsonData, listType);</pre>
*****************************************************************************************************
转换成功的例子
import java.net.Proxy.Type;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import com.google.gson.reflect.TypeToken;
public class JAVAjson {
/**
* @param args
*/
public static void main(String[] args) {
// List list=new ArrayList();
//储存的是map类型的值
// Map map = new HashMap();
//
// map.put("id","20");
//
// map.put("name","Ruby");
//
// list.add(map);
//
// Gson gson = new Gson();
//
// String jsonStr = gson.toJson(list);
//
// System.out.println("jsonStr="+jsonStr);
//
// java.lang.reflect.Type listType = new TypeToken<ArrayList<Map>>(){}.getType();
//
// ArrayList<Map> map1 = gson.fromJson(jsonStr, listType);
// System.out.println(map1.size());
// System.out.println(map1.get(0));
// System.out.println(map1.get(0).keySet()+">>>>>>>"+map1.get(0).values());
// for(Map m:map1){
// System.out.println(m.keySet()+">>>>>>>>"+m.values());
// }
//储存的是实体类
List<One> list=new ArrayList<One>();
One o=new One();
o.setName("sa");
o.setPwd("sa");
list.add(o);
//转换成json
Gson gson = new Gson();
String jsonStr = gson.toJson(list);
System.out.println("jsonStr="+jsonStr);
//转换成java对象
java.lang.reflect.Type listType = new TypeToken<ArrayList<One>>(){}.getType();
ArrayList<One> map1 = gson.fromJson(jsonStr, listType);
System.out.println(map1.size());
System.out.println(map1.get(0));
System.out.println(map1.get(0).getName()+">>>>>>>"+map1.get(0).getPwd());
for(One m:map1){
System.out.println(m.getName()+">>>>>>>>"+m.getPwd());
}
}
}