dubbo用于传输数据的bean必须有空构造器的原因
来源:互联网 发布:莫高冰酒怎么样 知乎 编辑:程序博客网 时间:2024/06/07 13:29
dubbo的消费者调用远程的服务提供者方法时,返回结果是已字节流的形式进行返回的,dubbo框架会对返回的字节流进行分析和封装,最终
返回实体对象。封装过程大致如下:
1、获取封装对象的Class字节码对象,取得该类最少参数的构造方法。
2、针对该构造方法所需参数,制造伪参数。所谓伪参数,就是对于int、boolean等基本类型,给0、false等默认值,对于对象类型,统一给null。
3、通过该构造方法,参入伪参数进行生成实体对象。
4、解析字节流对象,将对应的数据set到生成的实体对象中。
通过以上封装过程,可知是先生成封装对象,然后再一一进行赋值,故提供的构造方法非常重要,如果在构造方法里做业务处理,很可能
因为传入的参数都是伪数据,导致业务处理失败,程序报错。故建议凡是用作dubbo进行传输的对象,都提供一个空参的默认构造方法,并且
该构造方法里不做任何的业务操作。
返回实体对象。封装过程大致如下:
1、获取封装对象的Class字节码对象,取得该类最少参数的构造方法。
2、针对该构造方法所需参数,制造伪参数。所谓伪参数,就是对于int、boolean等基本类型,给0、false等默认值,对于对象类型,统一给null。
3、通过该构造方法,参入伪参数进行生成实体对象。
4、解析字节流对象,将对应的数据set到生成的实体对象中。
通过以上封装过程,可知是先生成封装对象,然后再一一进行赋值,故提供的构造方法非常重要,如果在构造方法里做业务处理,很可能
因为传入的参数都是伪数据,导致业务处理失败,程序报错。故建议凡是用作dubbo进行传输的对象,都提供一个空参的默认构造方法,并且
该构造方法里不做任何的业务操作。
阅读全文
0 0
- dubbo用于传输数据的bean必须有空构造器的原因
- TCP不适用于实时传输的原因
- dubbo使用POJO对象传输数据的RemotingException异常问题
- dubbo的函数返回类,含有有参构造函数时,必须写明一个无参构造函数
- 黑马程序员---在类中需要自己创建赋值构造函数的原因(特别是用于指针数据中)
- huffman树的构造(有空了再写!!!!!!)
- spring bean的构造器注入
- Dubbo源码分析(四):dubbo中bean的加载
- Dubbo中Bean的加载-1-ServiceBean
- 推荐一款加密解密的算法,用于简单数据的传输。
- webservice用于大数据量传输的处理
- Gingko——百度内网用于数据分发的P2P传输工具
- Parcelable 与Serializable(两种序列化方式用于传输非基本类型的数据)
- 用于数据挖掘的数据
- 关于dubbo服务找不到provider的原因
- mysql group by 涉及到的字段有空数据问题
- Dubbo系列(九)Dubbo源码分析之dubbo中bean的加载
- tcp 数据的传输
- 【Cocos2d-x游戏开发】解决Cocos2d-x中文乱码的三种方法
- Android 百度地图简单定位
- Executors类中创建线程池的几种方法的分析
- strut2 IE浏览器请求返回结果提示文件下载
- Koa2 —(1)
- dubbo用于传输数据的bean必须有空构造器的原因
- Spring Session学习(一)
- POJ 2456 Aggressive cows 简单二分
- Microsoft的考验??查找第二大的数
- 向量在游戏开发中的应用(三)
- 《Java源码分析》:TreeMap
- json 取以数字为键的值
- 陕西榆林官方公布产妇坠楼事件初步调查结果
- Android Studio如何发布APK