`

以前搭建的框架积累

 
阅读更多

spring 3.1.5+hibernate 3.6.2 + quartz 2.2.1 + weblogic +httpClient+thread

 

一.项目入口

首先提供 4个不同的线程接口介绍:

通过构建异步支付线程,异步同步线程,异步余额线程,查询明细异步线程

同时预留一个httpServert接口,供外部调用,在收到支付请求时,唤醒支付线程,从上游表中获取数据。

 

二.封装请求数据

每个渠道都会有不同的数据请求格式,但是整体的大概流程是相似的,根据具体的流程,封装了一个abstract流程类

1.与对端系统进行交易传输的交互(在处理具体请求之前会有一定的数据传输校验)

2.准备进行交易提交

3.与对端系统进行交易提交的交互

4.更新提交交易后的状态

5.清空请求的交易参数(一般包括支付的方法,参数,返回值等)

 

类似的同步流程:

1.是否要到前置机查询文件解析(类似于excel),主要区别文件类和数据流类

2.若需要则到前置机获取excel并解析(批次交互流程)

3.根据解析后判断是否需要明细的查询

4.若需要则进去明细查询的交互

5.更新查询交易后的状态

6.清空请求的交易参数(一般包括支付的方法,参数,返回值等)

 

三.quartz调度

涉及到集群操作,所以所有的调度在数据库quartz表中提前配置

类似:com.xxxx.xxxx.cmb.services.payment.company.PaymentImpl,具体的实现类继承PaymentTransmitImpl

 

扩展,具体的父类也可以抽象化,比如专门http流的接口,tcp流的接口,axis的流的接口都可以单独实现,供给后续具体渠道调用

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics