在设计支付系统是应该要注意

电商系统缺不了支付,甚至凡是带有支付的系统,支付是必须的。

目前我们在做支付系统时,一般不会做支付渠道的整个流程(也许在某一些金融公司会有),我们更多的接入微信支付、支付宝支付、银联等这些有公共接口的第三方支付平台。

我目前做的比较多的是微信支付和支付宝支付,基本功能是一致的:支付。但是有些细节不一样,比如支付金额的单位。微信支付金额的单位是【分】,而支付宝支付金额的单位是【元】,也许第一次看他们接口文档时,内心就有一万头草泥马奔驰而过:MD,干嘛不一样?那我们在设计数据库时,就要对这两个支付平台进行兼容。那我们在我们的数据库中,金额设计成分呢,还是元呢?他们映射到数据库里的区别就是:一个是整数(分),一个是浮点数(元)。咋整?

在起初的时候,我也不知道该怎么选择,分也行,元也行,没很大问题,不就是一个单位转换吗?那时设计的系统有的用分,有的用元,看心情。但是,数据字段使用浮点数时,会出现一个小问题:精度!

对,就是精度。因为浮动数在实际存储时,都是有精度的,即,比如我欲存的是1.4,但是实际存储的就有可能是1.402343或1.392343之类的,同时,在我们的代码层,也有会有精度问题,比如我就遇到过类似的问题。所以,为避免不必要的问题,或避免奇怪问题的发生时,我们在运算时,尽量采用整数运算,存储也尽量采用整形存储。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiongxianhe

你的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值