FastJson框架解析Json
发布时间:2020-12-16 18:43:03 所属栏目:百科 来源:网络整理
导读:一、简介 FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快! FastJSON是阿里巴巴的开源框架,被不少企业使用,是一个极其优秀的Json框架,Github地址:https://github.com/alibaba/fastjson 二、FastJson使用
一、简介 FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快! FastJSON是阿里巴巴的开源框架,被不少企业使用,是一个极其优秀的Json框架,Github地址:https://github.com/alibaba/fastjson 二、FastJson使用 FastJson对于json格式字符串的解析主要用到了下面三个类:?
三者继承关系如下: public abstract class JSON implements JSONStreamAware,JSONAware {...} public class JSONArray extends JSON implements List<Object>,Cloneable,RandomAccess,Serializable { public class JSONObject extends JSON implements Map<String,Object>,Serializable,InvocationHandler { 1、引入依赖 <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.51</version>//选择合适版本即可 </dependency> 2、常用方法 抽象类JSON中的常用方法(部分):
public static Object parse(String text);//将字符串解析为对象 public static JSONArray parseArray(String text);//将字符串解析为JSONArray public static <T> List<T> parseArray(String text,Class<T> clazz);//将字符串解析为List public static List<Object> parseArray(String text,Type[] types);//将字符串解析为List public static <T> T parSEObject(String text,Class<T> clazz);//将字符串解析为对象 public static JSONObject parSEObject(String text)//将字符串解析为JSONObeject public static Object toJSON(Object javaObject)// public static String toJSONString(Object object)//将对象转换为JSONString
public boolean containsKey(Object key)//是否包含指定对象Key,返回布尔值 public boolean containsValue(Object value)//是否包含指定对象Value,返回布尔值 public Object get(Object key)//通过对象Key,返回对象 public Boolean getBoolean(String key)//通过字符串Key,返回布尔值 public int getIntValue(String key)//通过指定字符串Key,返回int public JSONArray getJSONArray(String key)//通过指定字符串Key,返回JSONArray public JSONObject getJSONObject(String key)//通过指定字符串Key,返回JSONObject public <T> T getObject(String key,Class<T> clazz)//通过指定字符串Key和类对象,返回指定的对象 public boolean add(Object e)//添加指定对象,添加成功返回true,否则返回false public boolean contains(Object o)//是否包含指定对象,包含返回true,不包含返回false public Object get(int index)//通过索引返回对象 public Boolean getBoolean(int index)//通过索引返回布尔值 public Long getLong(int index)//通过索引返回Long public JSONObject getJSONObject(int index)//通过索引返回JSONObject public Object remove(int index)//通过索引删除指定对象,并返回删除的对象 public Object set(int index,Object element)//设置指定索引的元素,返回原有对象 public int size() //返回JSONArray的大小 ?实例代码可抽取为简单工具类FastJsonUtils package edu.tyut; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; import java.util.List; import java.util.Map; /** * FastJson工具类 */ public class FastJsonUtils { /** * 功能描述:把JSON数据转换成指定的java对象 * @param jsonData JSON数据 * @param clazz 指定的java对象 * @return 指定的java对象 */ public static <T> T getJsonToBean(String jsonData,Class<T> clazz) { return JSON.parSEObject(jsonData,clazz); } /** * 功能描述:把java对象转换成JSON数据 * @param object java对象 * @return JSON数据 */ public static String getBeanToJson(Object object) { return JSON.toJSONString(object); } /** * 功能描述:把JSON数据转换成指定java对象的List * @param jsonData JSON数据 * @param clazz 指定的java对象 * @return List<T> */ public static <T> List<T> getJsonToList(String jsonData,Class<T> clazz) { return JSON.parseArray(jsonData,clazz); } /** * 功能描述:把JSON数据转换成较为复杂的List<Map<String,Object>> * @param jsonData JSON数据 * @return List<Map<String,Object>> */ public static List<Map<String,Object>> getJsonToListMap(String jsonData) { return JSON.parSEObject(jsonData,new TypeReference<List<Map<String,Object>>>() { }); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何使用Oracle正确性能测试SELECT查询?
- objective-c – 如何在iPhone SDK中自动拍摄照片?
- [Ajax]小山版Ajax实现无刷新树----- 实现过程解释
- ios – 多个UIAlertView问题
- [寒江孤叶丶的Cocos2d-x之旅_14]Cocos2d-x 3.2版本以上LUA脚
- c# – Silverlight 4中的排序集合类?
- ruby-on-rails – 使用Nitrous.io的Rails应用程序中的Rspec
- 如何同时在iOS 5和iOS 4上测试构建
- nosql – 可以在数据存储中管理具有最终一致性的用户/身份吗
- ios – 捕获UIView的屏幕截图 – 性能缓慢