【职坐标】使用FastJson创建Java Json解析工具类

来源:互联网 发布:人类 动物 知乎 编辑:程序博客网 时间:2024/05/29 17:51

阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:

  1. 速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;
  2. 功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持Android;开源 (Apache 2.0)

在使用Fastjson之前需要向工程中导入相应的jar文件
下载链接:http://pan.baidu.com/s/1hsCbNEk


下面我们来看一下json解析的代码
1.使用FastJson生成json字符串

    /**     * 将任意对象转换成json     * @param object     */    public static String createJson(Object object) {        String json = JSON.toJSONString(object);        return json;    }

解析代码
1.解析单个对象

/**     * @param <T>     * @param jsonString     * @param cls     * @return     */    public static <T> T getObject(String jsonString, Class<T> cls) {        T t = null;        try {            t = JSON.parseObject(jsonString, cls);        } catch (Exception e) {            // TODO: handle exception        }        return t;    }

2.解析多个对象并放入一个集合中

    /**     * 使用Gson进行解析 List<T>     *      * @param <T>     * @param jsonString     * @param cls     * @return     */    public static <T> List<T> getObjects(String json, Class<T> cls) {        List<T> list = new ArrayList<T>();        try {            list = JSON.parseArray(json, cls);        } catch (Exception e) {        }        return list;    }

3.将解析结果放置在map中

public static List<Map<String, Object>> listKeyMaps(String json) {        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();        try {            list = JSON.parseObject(json,                    new TypeReference<List<Map<String, Object>>>() {            });        } catch (Exception e) {            // TODO: handle exception        }        return list;    }

如需获取工程源码请扫面下方二维码
这里写图片描述