接口交互组件设计
2022-04-21 19:16:25 16 举报
接口交互组件设计是一种专注于构建用户与系统之间有效沟通的设计方法。其核心目标是提供直观、易用且一致的用户体验,使用户能够轻松理解和操作。这种设计通常包括清晰的界面布局、明确的操作提示和反馈机制,以及合理的数据展示方式。此外,接口交互组件设计还需要考虑不同用户的需求和使用习惯,通过定制化设计满足个性化需求。同时,为了提高系统的响应速度和稳定性,设计师还需要关注性能优化和异常处理等方面。总之,接口交互组件设计旨在打造一个高效、愉悦且功能强大的用户界面,从而提升产品的市场竞争力和用户满意度。
作者其他创作
大纲/内容
implements
视情况新增抽象基类AbstractXxxHttpRequestBaseService
定义入参data实体对象
extends
是否新增服务方
RFC
AbstractHttpCallInBaseService// 实现请求入口方法@Overridepublic BaseHttpCallInResponse callIn(BaseHttpCallInRequest request)// 抽象方法核心业务处理protected abstract R handlerBusiness(BaseHttpCallInRequest request)// 抽象方法参数校验protected abstract void checkParam(xxx)
开始
其它协议类型如webservice
/**查询送货单服务接口DscQueryDeliveryNoteService// 实现接口编号获取 @Overrideprotected String getApiCode()
新建出入参对象及builder构建器
是否为新的服务提供方
被依赖
应用发布测试
/**内部feign调用出入口ISapCallClient
是:新的RFC服务方
引用内部系统api核心逻辑实现feign调用
AP模块组件化设计原则1. 大同小异:请求外部统一出口,内部提供服务统一入口;根据不同协议及服务方差异化组件设计2. 服务编排:抽象模板组件设计可自定义服务编排,方便扩展;提高复用性和公用性,使其成为与外部交互的工具化组件3. 内轻外简:不依赖内部应用模块微服轻量,对接外部只做单请求收发不处理复杂业务逻辑快速响应4. 独立解耦:AP独立微服部署,与内部业务模块解耦,保持独立性,外部系统使用直接引用api层即可
HttpCallInApiFactory// 服务器启动加载MOM提供的HTTP所有接口@PostConstructpublic void initApiMap() // 提供根据apiCode检索服务类public HttpCallInInterface getApiService(String apiCode)
新建抽象基类AbstractXxxRfcRequestBaseService
注册接口服务
***********其它接口示例/**xxxx服务接口DscXxxxxService// 实现接口编号获取 @Overrideprotected String getApiCode()
统一MOM调用外部接口出口目前支持RFC、HTTP
判定服务方
提供给外部的http服务出口
/** 查询SAP主物料数据接口服务实现类SapMaterialService// 实现rfc入参封装@Overrideprotected ImportParam builderRfcParam(String paramJson)// 实现返回类型@Overrideprotected Class<ResponseCompInfo> getReflectClass()
HttpCallInInterface// 外部请求MOM统一入口方法BaseHttpCallInResponse callIn(BaseHttpCallInRequest request);
新建出入参对象
具体实现
*****************************其它接口示例/** xxxxx接口服务实现类SapXXXXXXXService// 实现rfc入参封装@Overrideprotected ImportParam builderRfcParam(String paramJson)// 实现返回类型@Overrideprotected Class<ResponseCompInfo> getReflectClass()
定义service服务实现类
判定协议
HTTP
继承AbstractRfcRequestBaseService
是外部系统
我请求外部系统请看这
新建service服务实现类
判定协议类型
新增与外交互接口开发流程
归口HTTP接口服务,对内提供统一获取服务的方法
MOM提供HTTP请求统一接口
TestController
结束
发掘更多实现
统一对外暴露controller入口(无需改动)
AP功能性说明1.支持HTTP、RFC、Webservice等多种协议公用性强2.可灵活实现同异步业务逻辑处理保证时效性和成功率3.可集成redis、rabbitmq、nacos等组件4.抽象模块组件设计可扩展性强5.独立微服务部署与业务系统解耦可复用性强6.调用日志自动记录,支持失败调用可视化重试提高系统容错率
新增接口调用开发
抽象服务基类接口日志自动记录
是:新的HTTP服务方
否:塔机SAP
继承AbstractDscHttpRequestBaseService
否:DSC系统服务
是MOM
抽象类实现接口调用日志持久化及接口状态使用状态限制
给内部应用暴露Feign接口ISapCallClient
继承AbstractHttpCallInBaseService
HttpApiCallInController@PostMapping(value = \"/callin\")public BaseHttpCallInResponse callIn(@RequestBody BaseHttpCallInRequest request)
内部系统依赖mom-adapter-api
0 条评论
下一页