文档章节

gson 带泛型的转换

m
 modprobe
发布于 2016/11/08 09:57
字数 137
阅读 2
收藏 0

json转对象

public static <T> T json2Obj(String json, Class<T> cls) {
        Gson gson = new Gson();
        return gson.fromJson(json, cls);
    }

json转list object

很多例子根本都不是泛型的,还标榜泛型,真是误导他人

可以参考下面的方式来实现

public static <T> List<T> json2ListObj(String json, Class<T> cls) {
        List reList = new ArrayList();
        JsonElement jsonElement = new JsonParser().parse(json);
        JsonArray array = jsonElement.getAsJsonArray();
        Iterator iterator = array.iterator();
        Gson gson = new Gson();

        while (iterator.hasNext()) {
            JsonElement json2 = (JsonElement) iterator.next();
            T contact = gson.fromJson(json2, cls);
            //can set some values in contact, if required
            reList.add(contact);
        }

        return reList;
    }

 

 

不带泛型的json转list

 

gson.fromJson(json, new TypeToken<List<YourClass>>() {}.getType());

 

本文转载自:http://www.cnblogs.com/modprobe/p/4708646.html

m
粉丝 1
博文 35
码字总数 0
作品 0
私信 提问
轻触开源(三)-Gson项目源码解析_贰

转载请注明出处:https://my.oschina.net/u/874727/blog/750473 Q:1025250620 非墨上一篇文文章说到:Gson通过传入的TypeToken类型,遍历Gson变量中的factorys工厂,来生成一个TypeAdapter的转换...

-非墨-
2016/09/23
141
0
轻触开源(二)-Gson项目源码解析_壹

上篇文章<轻触开源-Java泛型Type类型的应用和实践(一)> https://my.oschina.net/u/874727/blog/747427 非墨写到JAVA的泛型机制,被用到很多的开源项目。在众多的开源项目中,Gson是很具有代表性...

-非墨-
2016/09/20
940
0
yidasanqian/json-util

json-util Json Util Integrate Jackson、Gson And Fastjson json-util工具类整合了Jackson、Gson和Fastjson库并统一API。 Env JDK7+ Maven Feature 统一调用API,形如。目前支持的转换的列表...

yidasanqian
2018/05/01
0
0
Gson转换泛型使用

Gson转换json可以像我这么使用吗,我转换的类型是泛型类型。 像我这么写,程序直接报错 java.lang.NullPointerException

Lindp
2015/06/04
1K
0
你真的会用Retrofit2吗?Retrofit2完全教程

本文注目录: Retrofit入门 Retrofit注解详解 Gson与Converter RxJava与CallAdapter 自定义Converter 自定义CallAdapter 其它说明 前言 本文中的Retrofit均指代Retrofit2.0。 本文涉及到的代...

火云
2016/12/27
79
0

没有更多内容

加载失败,请刷新页面

加载更多

好文:华杉:我等用功,不求日增,但求日减。减一分人欲,则增一分天理,这是何等简易!何等洒脱!

#写在前面1.怎么理解“减一分人欲,则增一分天理,这是何等简易!”?1)华杉提倡 “一劳永逸” 排除浪费,少干活,多赚钱,一战而定,降低作业成本。2)华杉提倡学海无涯,回头是岸...

阿锋zxf
24分钟前
3
0
vue 的bus总线

bus声明 global.bus = new Vue() 事件发送 controlTabbar () {global.bus.$emit('pickUp', 'ddd')}, 事件接收 global.bus.$on('pickUp', (res) => {this.isFocus = true})......

Js_Mei
29分钟前
2
0
大型系统演进之路-负载均衡演进

Nginx做负载均衡 通过Nginx的反向代理将请求分发到tomcat中,如果tomcat支持100并发,Nginx支持50000并发,理论上nginx把请求发送到500个tomcat就可以了。 LVS或F5做多个Nginx负载均衡 Tomc...

春哥大魔王的博客
34分钟前
4
0
Sqlite时间段查询中遇到的问题

问题: 我要查询DateTime时间其中的一段符合时间要求的数据,比如我要查询‘2019-06-06 16:50:00’至‘2019-06-06 16:59:00’这一段的数据 开始用这段代码 strSql= ("select * from Coll...

rainbowcode
38分钟前
2
0
大数据(hadoop-数据入库系统Sqoop原理架构)

Sqoop是什么 Sqoop:SQL-to-Hadoop 连接传统关系型数据库和Hadoop的桥梁 把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS、HBase 和 Hive) 中; 把数据从 Hadoop 系统里抽取并导出到关系型...

这很耳东先生
53分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部