在支付宝标准SDK的基础上再做了一层封装, 即java版本demo中alipay-trade-sdk.jar
当面付2.0demo使用前必读
运行环境:
JDK 1.6
Tomcat 6.0直接运行demo步骤如下:1、请先确认zfbinfo.properties配置文件是否已配置完成2、运行Main.java中的main方法集成至商户系统步骤如下:1、拷贝java目录下的Main.java至系统商源代码目录2、将lib目录下所有jar文件添加至系统商lib目录3、拷贝resources目录下的配置文件至系统商classpath根目录4、在系统商项目中运行Main方法,确认集成无误5、系统商使用main方法中的调用样例进行商户端系统开发### 当面付2.0demo代码结构TradePayDemo ###src`-- main |-- java | `-- com | `-- alipay | `-- demo | `-- trade | `-- Main.java ## 当面付2.0调用范例 ## |-- lib 依赖类库 | |-- alipay-sdk-java20150625220051.jar | |-- alipay-trade-sdk.jar TradePaySDK创建的lib | |-- commons-codec-1.10.jar | |-- commons-configuration-1.10.jar | |-- commons-lang-2.6.jar | |-- commons-logging-1.1.1.jar | |-- core-2.1.jar | |-- gson-2.3.1.jar | `-- hamcrest-core-1.3.jar `-- resources `-- zfbinfo.properties 配置文件,调用Main方法之前请确认配置文件是否已正确配置
接口
public interface AlipayTradeService {// 当面付2.0流程支付public AlipayF2FPayResult tradePay(AlipayTradePayContentBuilder builder);// 当面付2.0消费查询public AlipayF2FQueryResult queryTradeResult(String outTradeNo);// 当面付2.0消费退款public AlipayF2FRefundResult tradeRefund(AlipayTradeRefundContentBuilder builder);// 当面付2.0预下单(生成二维码)public AlipayF2FPrecreateResult tradePrecreate(AlipayTradePrecreateContentBuilder builder);
}
1. 条码支付:
提供:支付、查询、退款(条码支付),封装了支付宝SDK,提供给收银系统界面直接调用。
1. 支付接口流程:
word/media/image1.gif
2. 查询接口流程
word/media/image2.gif
3. 退款接口流程:
word/media/image3.gif
2. 扫码支付(不含异步通知)
预下单(扫码支付)接口
word/media/image4.gif
扫码支付获得支付结果:
方案一:采用上面的查询接口。
方案二:采用轮询逻辑:
word/media/image5.gif
### 当面付2.0sdk代码结构TradePaySDK ###src`-- main |-- java | `-- com | `-- alipay | |-- api 服务保障接口数据模型,以后会迁移回底层alipay sdk | | |-- request | | | `-- AlipayHeartbeatSyncRequest.java | | `-- response | | `-- AlipayHeartbeatSynResponse.java | `-- demo | `-- trade | |-- config | | |-- Configs.java 配置文件,解析properties文件 | | `-- Constants.java 常量定义 | |-- model | | |-- ExtendParams.java 扩展参数 | | |-- GoodsDetail.java | | |-- TradeStatus.java | | |-- builder 当面付2.0请求包 | | | |-- AlipayHeartbeatSyncContentBuilder.java 服务保障接口请求bizContent结构体 | | | |-- AlipayTradePayContentBuilder.java 条码支付请求bizContent结构体 | | | |-- AlipayTradePrecreateContentBuilder.java 扫码支付(产生二维码)请求bizContent结构体 | | | |-- AlipayTradeQueryCententBuilder.java 当面付2.0查询请求bizContent结构体 | | | |-- AlipayTradeRefundContentBuilder.java 当面付2.0退款请求bizContent结构体 | | | `-- RequestBuilder.java 当面付2.0请求抽象类 | | |-- hb 服务保障接口数据模型 | | | |-- EquipStatus.java | | | |-- EquipStatusAdapter.java | | | |-- ExceptionInfo.java | | | |-- ExceptionInfoAdapter.java | | | |-- Product.java | | | |-- TradeInfo.java | | | |-- TradeStatus.java | | | `-- Type.java | | `-- result 当面付2.0应答包 | | |-- AlipayF2FPayResult.java 当面付2.0支付应答 | | |-- AlipayF2FPrecreateResult.java 当面付2.0预下单(产生二维码)应答 | | |-- AlipayF2FQueryResult.java 当面付2.0查询应答 | | |-- AlipayF2FRefundResult.java 当面付2.0退货应答 | | `-- Result.java | |-- service | | |-- AlipayTradeService.java 当面付2.0服务接口 | | `-- impl | | `-- AlipayTradeServiceImpl.java 当面付2.0具体实现 | `-- utils | |-- GsonFactory.java 使用了gson序列化 | |-- Utils.java 杂物工具类 | `-- ZxingUtils.java 使用了zxing库进行二维码的生成 `-- lib 依赖类库 |-- alipay-sdk-java20150625220051.jar 支付宝sdk底层实现lib |-- commons-codec-1.10.jar |-- commons-configuration-1.10.jar |-- commons-lang-2.6.jar |-- commons-logging-1.1.1.jar |-- core-2.1.jar |-- gson-2.3.1.jar `-- hamcrest-core-1.3.jar
本文来源:https://www.2haoxitong.net/k/doc/200fcc377f1922791788e806.html
文档为doc格式