使用Gson将Java对象转换为JSON

GsonGoogle的一个开源项目,可以将Java对象转换成JSON,也可能将JSON转换成Java对象。

   

Gson里最重要的对象有2Gson GsonBuilder

   

Gson2个最基本的方法
1) toJson() –
转换java 对象到JSON
2) fromJson() –
转换JSONjava对象

   

下面是几个小例子

1. toJson() example

Java代码  

  1. class TestObjectToJson {  
  2.   private int data1 = 100;  
  3.   private String data2 = "hello";  
  4. }  
  5.      
  6. TestObjectToJson obj = new TestObjectToJson();  
  7. Gson gson = new Gson();  
  8. String json = gson.toJson(obj);  

 会输出 {"data1":100,"data2":"hello"}

   

2. fromJson() example

Java代码  

  1. import com.google.gson.Gson;  
  2.      
  3. class TestJsonFromObject {  
  4.   private int data1;  
  5.   private String data2;  
  6. }  
  7.      
  8. String json = "{'data1':100,'data2':'hello'}";  
  9. Gson gson = new Gson();  
  10. TestJsonFromObject obj = gson.fromJson(json, TestJsonFromObject.class);  

   

3. Java对象的属性转换成指定的JSON名字

Java代码  

  1. import com.google.gson.FieldNamingPolicy;  
  2. import com.google.gson.Gson;  
  3. import com.google.gson.GsonBuilder;  
  4. import com.google.gson.annotations.SerializedName;  
  5.     
  6. public class TestGson {  
  7.         
  8.     @SerializedName("first_field")  
  9.     private String field1;  
  10.         
  11.     private String secondField;  
  12.     
  13.     public TestGson(String param1, String param2) {  
  14.         field1 = param1;  
  15.         secondField = param2;  
  16.     }  
  17. }  
  18.     
  19. TestGson obj = new TestGson("aaaa""bbbbb");  
  20. Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create();  
  21. gson.toJson(obj);  

 输出结果 {"first_field":"aaaa","SecondField":"bbbbb"}

   

   

原文 http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/

posted @ 2013-10-31 17:17  wuseyukui  阅读(564)  评论(0编辑  收藏  举报