gson较之Jackson方便:
1、下载gson.jar包
第二步,进行转化.Gson这个类是其中的关键,它负责来进行转化java对象和json.将对象转化为json的格式,使用方法toJson(),这个
方法有几个不同的用法.对于比较简单的对象,比如一个数组,或者一个list,你可以只将要转化的java对象作为参数,可以如果你的对象的格式蛮复杂,
那么,你就需要另一个参数来描述一个java对象的结构,这另一个参数可以是Type或者是Class,它的建立方法也很简单,比如我想把一个类型为
List
>>类型的java对象obj转化为json的格式,你可以这么写
- Gson gson = new Gson;
- String json = gson.toJson(obj, new TypeToken<List<List<Map<String, String>>>(){}
- .getType());// to Json
- List<List<Map<String, String>>> obj2 = gson.from(obj, new TypeToken<List<List<Map<String, String>>>(){}.getType());
具体的其他示例转自:
1.须要的Jar包
1) Google Gson(gson-xxx.jar)下载地址:
2)JUnit4
2. 应用实例代码
下载地址:
包含如下类:
1)通俗JavaBean类/带日期属性的JavaBean类:JavaBean.java/DateBean.java
2)日期序列/反序列对象类:DateSerializerUtils.java、DateDeserializerUtils.java
3)测试类GsonTester.java
具体代码:
1)JavaBean类/DateBean类
JavaBean属性:String id、String name、int age、String addr;
DateBean属性:String id、String name、int age、java.util.Date date;
2)DateSerializerUtils.java
- package
- com.lupeng.javase.json.util;
-
- import
- java.lang.reflect.Type;
- import
- java.util.Date;
- import
- com.google.gson.JsonElement;
- import
- com.google.gson.JsonPrimitive;
- import
- com.google.gson.JsonSerializationContext;
- import
- com.google.gson.JsonSerializer;
-
- /**
- * 日期解序列实用对象类
- * @author Lupeng
- * @date 2011-08-06
- */
- public class
- DateSerializerUtils implements
- JsonSerializer<java.util.Date>{
- @Override
- public
- JsonElement serialize(Date date, Type type,
- JsonSerializationContext content) {
- return new
- JsonPrimitive(date.getTime());
- }
-
- }
DateDeserializerUtils.java
- package
- com.lupeng.javase.json.util;
-
- import
- java.lang.reflect.Type;
- import
- com.google.gson.JsonDeserializationContext;
- import
- com.google.gson.JsonDeserializer;
- import
- com.google.gson.JsonElement;
- import
- com.google.gson.JsonParseException;
- /**
- * 日期序列化实用对象类
- * @author Lupeng
- * @date 2011-08-06
- */
- public class
- DateDeserializerUtils implements
- JsonDeserializer<java.util.Date>{
- @Override
- public
- java.util.Date deserialize(JsonElement json, Type type,
- JsonDeserializationContext context) throws
- JsonParseException {
- return new
- java.util.Date(json.getAsJsonPrimitive().getAsLong());
- }
-
- }
3)测试类GsonTester.java
阅读(5035) | 评论(0) | 转发(0) |