java bean和json之间的转换

来源:互联网 发布:php web 开发 编辑:程序博客网 时间:2024/05/16 04:52
********************************************************
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());
 }


}


}
原创粉丝点击