美文网首页
fastjson遇到的问题

fastjson遇到的问题

作者: 高节 | 来源:发表于2019-10-15 16:24 被阅读0次

    今天碰到一个问题,需要将数据保存在ES,然后便于搜索,由于ES本身是存在1秒钟的延迟的,所以ES一致性要求不高,主要是最终一致,我就想通过kafka消息的方式来同步

    因为是kafka消息,所以传输的对象为string,然后用JSON.parseObject()方法解析回来,然后再执行,可是在这个反序列化的方法中,却出现了属性丢失的情况,原因是fastjson的原理是通过反射,调用set方法,比如{"name": "AA"},实际就是调用setName(),但是ES里面的 IndexRequest 对象没有这些方法,所以导致属性丢失

    解决方案,反序列化的对象必须要有set方法,所以我就将 index,id, source存到自定义的对象,然后再反序列化,这样就能获取

    还有一点,自定义的对象必须要有空参构造器,fastjson原理就是用空参构造器创建对象,然后set

    代码久不贴了,还没有整理好,今天先记录问题

    相关文章

      网友评论

          本文标题:fastjson遇到的问题

          本文链接:https://www.haomeiwen.com/subject/rywgpctx.html