Java的JSON处理器(fastjson,Jackson)
1:fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
主要特点:
快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)
强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)
零依赖(没有依赖其它任何类库除了JDK)
示例代码:
import com.alibaba.fastjson.JSON;
BeautyParam b = new BeautyParam();
b.setAppId("22");
b.setBeginTime("2016,4,5");
b.setOrderState("3");
b.setPhone("13343435455");
String json = JSON.toJSONString(b);
System.out.println(json);
输出:
{"appId":"22","beginTime":"2016,4,5","orderState":"3","phone":"13343435455"}
com.cmcc.param.beauty.BeautyParam@185d8b6
其他转换详情看JSON类,如果只使用到了简单的个别转换可以封装个FastjsonUtil类使用。
2:Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好。
BeautyParam b = new BeautyParam();
b.setAppId("22");
b.setBeginTime("2016,4,5");
b.setOrderState("3");
b.setPhone("13343435455");
ObjectMapper o =new ObjectMapper();
String s = o.writeValueAsString(b);
System.out.println(s);
BeautyParam b1 = o.readValue(s, BeautyParam.class);
System.out.println(b1);
输出:
{"appId":"22","orderType":null,"orderId":null,"userId":null,"beginTime":"2016,4,5","endTime":null,"paymentType":null,"orderState":"3","bookingTimeBegin":null,"bookingTimeEnd":null,"phone":"13343435455","page":null,"pagesize":null,"offset":null}
com.cmcc.param.beauty.BeautyParam@59ec2012
其他转换详情看ObjectMapper类,如果只使用到了简单的个别转换可以封装个JacksonUtil类使用。