内容简介:JSONQuery v0.2.5 发布,更新内容如下: 本次更新修复了一个bug,增加了两个新重载方法,更方便的帮助把结果反序列化为Java对象。 Maven <dependency> <!-- JSONQuery @ https://JSONQuery.kagura.me...
JSONQuery v0.2.5 发布,更新内容如下:
本次更新修复了一个bug,增加了两个新重载方法,更方便的帮助把结果反序列化为 Java 对象。
Maven
<dependency> <!-- JSONQuery @ https://JSONQuery.kagura.me --> <groupId>me.kagura</groupId> <artifactId>JSONQuery</artifactId> <version>0.2.5</version> </dependency>
新增方法示例:
// v0.2.5新增
//将选择结果反序列化为普通对象
Post post = JSONQuery.select(json, "comment_info > [2]", Post.class);
//将选择结果反序列化为普通对象数组
Post[] postArray = JSONQuery.select(json, "comment_info", Post[].class);
//将选择结果反序列化为泛型类型List<Post>
Type type = new TypeToken<List<Post>>() {}.getType();
List<Post> postList = JSONQuery.select(json, "comment_info", type);完整示例:
@Test
public void Test() throws TypeNotMismatchException, FieldNotExistException {
String json = "" +
"{\n" +
" \"errno\": 0,\n" +
" \"errmsg\": 成功,\n" +
" \"user\": \"{\\\"user_id\\\":643361255,\\\"user_name\\\":\\\"鹞之神乐\\\",\\\"user_sex\\\":1,\\\"user_status\\\":1}\",\n" +
" \"comment_info\": [\n" +
" {\n" +
" \"tid\": \"5504460056\",\n" +
" \"pid\": \"116776960983\",\n" +
" \"cid\": \"116857893053\"\n" +
" },\n" +
" {\n" +
" \"tid\": \"5504460056\",\n" +
" \"pid\": \"116776960983\",\n" +
" \"cid\": \"116858057626\"\n" +
" },\n" +
" {\n" +
" \"tid\": \"5504460056\",\n" +
" \"pid\": \"116776960983\",\n" +
" \"cid\": \"116880757453\"\n" +
" }\n" +
" ],\n" +
" \"data\": {\n" +
" \"comment_list\": {\n" +
" \"116776891765\": {\n" +
" \"comment_num\": 3,\n" +
" \"comment_list_num\": 4\n" +
" },\n" +
" \"116776960983\": {\n" +
" \"comment_num\": 4,\n" +
" \"comment_list_num\": 4\n" +
" }\n" +
" }\n" +
" }\n" +
"}";
//获取根元素errno
JsonResult jsonResult = JSONQuery.select(json, "errno");
//获取根元素errno,并转换为int
int errno = jsonResult.getAsInt();
//获取根元素data中的comment_list
jsonResult = JSONQuery.select(json, "data > comment_list");
//正则过滤出属性数组,针对一部分拿对象当数组用的情况
jsonResult = JSONQuery.select(json, "data > comment_list > [\\d+]");
//获取数组指定位置的元素
jsonResult = JSONQuery.select(json, "comment_info > [2]");
//获取数组指定位置的元素 负数坐标
jsonResult = JSONQuery.select(json, "comment_info > [-1]");
//针对某个字符串属性的值又是个json字符串的情况
jsonResult = JSONQuery.select(json, "user > user_name");
//jsonResult作为参数替代json字符串
JsonResult data = JSONQuery.select(json, "data");
jsonResult = JSONQuery.select(data, "comment_list");
//将json字符串转换为JsonResult
jsonResult = JSONQuery.select(json, "");
jsonResult = JSONQuery.select(json, null);
// v0.2.5新增
//将选择结果反序列化为普通对象
Post post = JSONQuery.select(json, "comment_info > [2]", Post.class);
//将选择结果反序列化为普通对象数组
Post[] postArray = JSONQuery.select(json, "comment_info", Post[].class);
//将选择结果反序列化为泛型类型List<Post>
Type type = new TypeToken<List<Post>>() {}.getType();
List<Post> postList = JSONQuery.select(json, "comment_info", type);
}链接:
官网:https://JSONQuery.kagura.me
GitHub:https://github.com/KingFalse/JSONQuery
GitEE:https://gitee.com/Kagura/JSONQuery
OSChina:https://www.oschina.net/p/jsonquery
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
数据结构与算法分析
张琨、张宏、朱保平 / 人民邮电出版社 / 2016-2-1 / 45
本书共分10章,主要包括第1章绪论,第2章线性表,第3章栈和队列,第4章串,第5章数组和广义表,第6章 树和二叉树,第7章图,第8章查找,第9章内部排序,第10章算法分析。其内容模块涵盖了课堂教学、习题课教学、实验教学、自学辅导、综合训练等。立体化教材的使用在提高教学效率、增强教学效果、加大教学信息量、培养学生的应用与实践能力。 作者简介一起来看看 《数据结构与算法分析》 这本书的介绍吧!
XML 在线格式化
在线 XML 格式化压缩工具
HSV CMYK 转换工具
HSV CMYK互换工具