关于学校网站建设经费的申请报告,手机购物网站模版,社交网络的推广方法,wordpress 目录配置文章目录 问题描述#xff1a;结果#xff1a;原因#xff1a;Thrif支持的数据类型解决#xff1a;规范 问题描述#xff1a;
前端查询后端的pcs总数字段#xff0c;此字段需要从mydsql的db中获取。PCS字段类型为decimal(26,6)#xff0c;于是打算在response中使用 Big… 文章目录 问题描述结果原因Thrif支持的数据类型解决规范 问题描述
前端查询后端的pcs总数字段此字段需要从mydsql的db中获取。PCS字段类型为decimal(26,6)于是打算在response中使用 BigDecimal pcs来接收
结果
报错Thrift class ‘DTO’ field ‘pcs’ type ‘java.math.BigDecimal’ is not a supported Java type
原因
Thrift 不支持BigDecimal
Thrif支持的数据类型
https://www.cnblogs.com/horace/p/4415748.html
解决
需要将bigdecimal 与double转换
https://www.cnblogs.com/Wenxu/p/10341182.html
规范 属性 ID 可以顺序追加不可更改已有属性 ID 数据类型 参数支持的容器类型: List、Set、Map 自定义异常必须继承自 AbstractThriftException同时重写toString方法AbstractThriftException的toString方法不够明确 Thrift 注解代码 和IDL生成的目标代码, 不能相互引用 所有的 POJO 类属性强烈建议使用包装数据类型如果用基础类型的话无法使用IDL方式里的isSet来判断某个属性是否被赋值过。 RPC 方法的返回值必须使用包装数据类型 RPC 方法的参数如果是包装数据类型Integer、Long等同时又传null的话服务端收到时会分配对应的基础类型的默认值。 (注意如果是对象内部的字段是包装数据类型的话客户端传null值若定义字段时有默认值服务端会收到此值否则收到null值) 一个类只能有一个带有ThriftConstructor注解的构造函数