FastJson的简单使用 博客分类: Java Tools FastJson
FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快!但是文档做得不好,在应用前不得不亲测一些功能。
实际上其他的json处理工具都和它差不多,api也有几分相似。
一、JSON规范
JSON是一个标准规范,用于数据交互,规范的中文文档如下:
http://www.json.org/json-zh.html
参看规范,来对比JSON类库处理结果。
二、fastjson的一些简要说明
1、了解fastjson
Fastjson介绍
Fastjson是一个Java语言编写的JSON处理器。
1、遵循http://json.org标准,为其官方网站收录的参考实现之一。
2、功能qiang打,支持JDK的各种类型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。
3、无依赖,不需要例外额外的jar,能够直接跑在JDK上。
4、开源,使用Apache License 2.0协议开源。http://code.alibabatech.com/wiki/display/FastJSON/Home
如果获得Fastjson?
SVN:http://code.alibabatech.com/svn/fastjson/trunk/
WIKI:http://code.alibabatech.com/wiki/display/FastJSON/Home
Issue Tracking:http://code.alibabatech.com/jira/browse/FASTJSON
2、主要的使用入口
maven的dependency
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> </dependency>
Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。
public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject public static final <T> T parseObject(String text, Class<T> clazz); // 把JSON文本parse为JavaBean public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray public static final <T> List<T> parseArray(String text, Class<T> clazz); //把JSON文本parse成JavaBean集合 public static final String toJSONString(Object object); // 将JavaBean序列化为JSON文本 public static final String toJSONString(Object object, boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本 public static final Object toJSON(Object javaObject); //将JavaBean转换为JSONObject或者JSONArray。
3、有关类库的一些说明
SerializeWriter:相当于StringBuffer
JSONArray:相当于List<Object>
JSONObject:相当于Map<String, Object>
JSON反序列化没有真正数组,本质类型都是List<Object>
4、fastjson还有很多很高级的特性,比如支持注解、支持全类型序列化,这些都是很好的特性,功能强大,不在本次测试范围。
5.主要的一些方法(JSON、JSONObject)
//个人常用的方法 JSON.toJSONString(Object o); JSON.toJSON(Object o); ... //使用这样的转化可以减少报错 RiskReport riskReport = JSONObject.parseObject(tdReportDetails.getReportDetail(),RiskReport.class); Map map = JSONObject.parseObject(json); ...
其他的用法:
http://zyjustin9.iteye.com/blog/2020533
推荐阅读
-
FastJson的简单使用 博客分类: Java Tools FastJson
-
Java boolean类型 Getter Setter 的使用和细节.md 博客分类: fastjson fastjsonjson取不到值转换为boolean为nullLinux
-
Java模版引擎velocity的使用 博客分类: velocity velocity
-
使用安全验证的JAX-WS WEB SERVICES示例 博客分类: java
-
【java】JETM--Java™的执行时间测量库简单学习(一) 博客分类: java知识总结 javajetm
-
alibaba fastjson的使用总结和心得 博客分类: 开源分析系统使用 fastjsonjson
-
服务端tomcat的简单监控 博客分类: 系统使用
-
DBCP连接池的最简单应用(用于ORACLE数据库) 博客分类: Oracle[Java|C++|C#|Python]Database General
-
oracle的JDBC使用preparedStatement处理char类型字段的问题 博客分类: java JDBCOracleHibernateSQLSQL Server
-
java 使用BigDecimal运算的时候报错No exact representable decimal result 博客分类: 技术分享 java运算BigDecimal