如何用gson存储一个java对象,然后取出来的时候值完全还原成原先的结构

scoo123 发布于 2015/04/08 09:28
阅读 1K+
收藏 0
本人现有的项目中,有一个对象需要去连接其他系统,获取IP数据,每次启动服务需要花费大量的时间,而且存在对方服务关闭的情况,现在想把这个进行改造,把对象存在redis服务器中,当我获取到改对象的时候,用gson转成json类型存储放到redis服务器中,但是每次取出来都会报错。查看了错误原因,是该对象下面有一个私有的TreeMap<A,B>这个属性,当用gson取的时候,这个TreeMap<A,B>的对象无法转义,会报:com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was 。。这样的错误,请问下有谁知道这个怎么办吗?
加载中
0
scoo123
scoo123
已经找到解决方案,gson下面有一个gsonbulider,里面有个参数complexMapKeySerialization,使用Gson gson = new GsonBulider.enableComplexMapKeySerialization.create()即可解析出参数。
返回顶部
顶部