比如基类是Base, A类继承了Base,
首先我将A序列化为字符串存在redis, 当我从redis读出这个字符串并反序列化为Base类的一个实例base, 我可以用base instance of A为true吗,想要的就是这个效果。
现在遇到的问题就是,反序列化为Base实例后就类型丢失了。
原提问者GitHub用户jialechan
ruid使用Java中的序列化和反序列化来将查询结果从查询节点传输到代理节点或客户端。Java中的序列化和反序列化机制支持继承和多子类继承,因此Druid也应该支持这些特性。
在Druid中,查询结果是使用Java序列化的方式进行序列化和反序列化的。当查询结果包含继承关系时,Java序列化和反序列化机制将自动处理继承关系。
例如,如果查询结果包含一个基类和两个子类,Java序列化和反序列化机制将正确地序列化和反序列化这些对象,并保留它们之间的继承关系。
当您在使用Druid时遇到序列化和反序列化问题时,请确保您的Java对象正确地实现了序列化接口,并且类的版本号保持一致。这将确保Java序列化和反序列化机制正确地处理您的对象,并保留它们之间的继承关系。
SerializerFeature[] features = new SerializerFeature[] { SerializerFeature.WriteClassName, //SerializerFeature.SkipTransientField, //SerializerFeature.DisableCircularReferenceDetect };
String ttt = JSON.toJSONString(text, features);
好像这样可以
原回答者GitHub用户jialechan
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。