- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 后台类交易---统一接口设计的一些思考
后台类交易---统一接口设计的一些思考业务背景原代码设计问题在一次需求开发中,需要给10多个接口添加一个公共字段。并在交易入口处添加统一的校验逻辑。我审视了下现有的接口设计,突然感觉无从下手,也不是没法改,只是在现在的设计上改起来会很丑。以前单个接口加字段时,不觉得有啥问题,现在突然觉得原来设计,扩展性还是有点欠缺。业务背景 收单支付业务,提供支付【/order/pay】,订单查询【/order/orderQuery】,退款【/order/refund】,退款查询【/order/refundQu
2022-03-17 17:19:26 722
原创 问题-微服务调用-feign.FeignException$BadRequest: status 400 xxxx
问题-微服务调用-feign.FeignException$BadRequest: status 400 xxxx1. 问题概述A服务调用B服务某个接口,出现异常【feign.FeignException$BadRequest: status 400 reading CashierAuthBindingApi#pocketShowList(String)】。开始以为是被调用方流程有啥问题,然后查询B服务相关日志,结果发现没有日志相关记录。后面单独测试接口发现问题,确认是入参没有值导致的异常。被调用方法
2021-10-19 08:27:24 6411
原创 Mock相关
Mock相关Mock-对象属性赋值对象代码:public class WebAgreeService { @Resource private SecurityProperties securityProperties; @Value("${agree.new.sign:true}") private boolean newSign;}Mock处理:@Beforepublic void init() { MockitoAnnotations.ini
2021-08-26 10:42:58 459
原创 收单-批量支付-批量支付文件规则设计
收单-批量支付-批量文件规则设计1. 文件名2. 文件大小3. 文件编码4. 文件内容格式4.1 基于分隔符4.2 基于固定位数4.2 基于特殊文件格式1. 文件名建议跟批量支付的批次流水保持一致,考虑防重和文件更新的问题。批次流水也需要有对应的规则,比如固定24位,14位日期 + 10位序列号,纯数据+字母等等。2. 文件大小明确文件大小,防止恶意大文件上传。文件大小可以根据,文件内订单明细数量的上限,例如规定明细不超过5000条。测试时按照5000条,所有字段都达到规定的最大长度,生成一个文件,
2021-07-13 14:22:05 550
原创 收单-基于文件方式的批量交易处理思路
UDMP-b3fe91b03c1eb05a186904007ba89e7d9ae6548523-a36218c7-20210514102151-00000001常用.7z
2021-07-13 13:39:26 524
原创 问题之PreparedStatement executeBatch() 更新仅部分有效
问题之PreparedStatement executeBatch() 更新仅部分有效问题背景某业务场景下,需要批量对订单信息进行更新,分成功和失败,更新不同的字段。涉及两张表,订单表和订单扩展表,一共四条不同的SQL。 一开始想的是,PreparedStatement也支持不同SQL的批量处理,直接遍历orderList集合,将所有要更新的sql都通过addbatch()添加进行,然后每100条执行一次。问题代码成功运行,没报错,也打印出了执行SQL,数量和数据都对上了。但是查看数据库,真正更新了
2021-04-28 13:13:14 874
原创 收单系统迁移
收单系统迁移分享1. 迁移目标2. 迁移分析2.1 评估迁移规模2.2 信息收集2.3 接口分析2.4 数据库分析3. 功能开发3.1 旧系统接口适配3.2 配套功能开发4. 正式迁移4.1 生产环境自测4.2 迁移客户实测1. 迁移目标 将旧系统客户无感迁移到新系统中。要实现无感,那么新系统需要完全兼容旧系统的相关接口功能。接口请求的URL不变,请求的字段不变,响应结果与处理的逻辑要相匹配 收单商户按批次迁移2. 迁移分析迁移前要充分了解旧系统的相关情况2.1 评估迁移规模通过了解需要
2021-01-20 17:58:50 191
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人