当前位置: 首页 > news >正文

dubbo泛化调用时transient字段失效问题

工作中发现dubbo泛化调用时结果类中的某个字段即使已经用transient修饰了,但是前端还是会有该字段展示,探究了原因如下:

  • 如果是走的泛化调用,会通过genericFilter和genericImplFilter两个类来处理序列化和反序列化,会先将结果变成map对象,然后调用底层的hessian2协议,变成map对象时使用的是PojoUtils中的generalize方法,通过读取get方法来组装map对象,不管transient字段,然后调用底层的hessian2协议后也就跟transient无关了
  • 如果走的是正常rpc调用,生成的结果在dubboCodec类中进行序列化时会走到hessian2的Hessian2Output类中的writeObject的getSerializer生成javaSerializer,在javaSerializer的构造方法中会检测字段是否有transient,有的话就不会生成该字段的序列化器,达到transient的目的
http://www.dtcms.com/a/166642.html

相关文章:

  • Queue系列之SynchronousQueue源码分析:原理剖析与实战对比
  • 【默子速报】DeepSeek新模型 Prover-V2 报告解读
  • 从Oculus到Meta:Facebook实现元宇宙的硬件策略
  • 二、OrcaSlicer用户预设
  • 电容的作用
  • 对js的Date二次封装,继承了原Date的所有方法,增加了自己扩展的方法,可以实现任意时间往前往后推算多少小时、多少天、多少周、多少月;
  • 使用atomic实现无锁方式的全局变量访问
  • 借助电商 API 接口实现电商平台商品数据分析的详细步骤分享
  • Python第四周作业
  • 力扣-数组-238 除自身以外数组的乘积
  • tbb parallel_for 使用教程2之 tbb::blocked_range
  • 【Android】Android签名解析
  • javascript 深拷贝和浅拷贝的区别及具体实现方案
  • 双指针(4)——盛水最多的容器
  • Vcpkg C++库管理工具安装
  • Depth Anything V2:深度万象 V2
  • 前端js学算法-实践
  • 可编辑25页PPT | 企业数字底座:数据中台构建路径、方法和实践
  • Vue3源码学习3-结合vitetest来实现mini-vue
  • Java ResourceBundle 资源绑定详解
  • linux find命令妙用
  • Kettle下载安装教程
  • Set系列之HashSet源码分析:原理剖析与实战对比
  • Ubuntu 24.04 终端美化
  • 强化学习之基于无模型的算法之基于值函数的深度强化学习算法
  • 望获实时Linux系统荣获人形机器人技术突破奖
  • 得物可观测平台架构升级:基于GreptimeDB的全新监控体系实践
  • 多通道经颅电刺激器的主流厂家介绍
  • 柯希霍夫积分法偏移成像中数据分布不均匀的处理方法
  • 【题解】Codeforces Round 1019 (Div. 2) B.Binary Typewriter ~ E.Keep the Sum