scala如何利用genson将jsonObeject对象转化为任意类型对象

大数据开发过程中,常常涉及数据迁移的过程。比如实时同步kafka消息队列中的数据到HBase的需求中,从kafka中取到的数据是jsonObject对象。

通过跳板机输入查看kafka消息队列的命令,可以拿到经过BASE64加密后的数据源。复制数据源到BASE64解码工具进行解码,得到JSON串,再利用JSON在线编辑器,将JSON字符串整理以便观察。

通过JSON在线编辑器可以看到,images这个字段存储的是一个数组对象,数组里的元素个数为1。而我从kafka消息队列中拿到的数据是jsonObject对象。那么怎样将jsonObject对象转化为List集合呢?(考虑到可能存在重复的元素,所以使用List)

首先我们导入阿里巴巴的JSON包和genson的解析工具jar包。

代码中可以看到,通过生成的jsonObject对象,可以解析从kafka消息队列中获取的数据源,得到对应的jsonObject对象。这时再调用fromJson方法,可以转化为任意类型的对象,类型根据存储变量的类型决定。这样便可以调用List的size()方法获得集合中元素的个数。

猜你喜欢

转载自www.cnblogs.com/minghe666/p/10657026.html
今日推荐