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


大数据开发过程中,常常涉及数据迁移的过程。比如实时同步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()方法获得集合中元素的个数。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM