JAVA 实现支付宝接口

0、必备类函数

AlipayConfig配置文件 (签约帐号、密钥、页面跳转通知页面都在这里设定)ui

MD5支付宝签名加密文件加密

AlipayCore支付宝接口公共函数类url

AlipayNotify-支付宝通知处理类code

AlipaySubmit支付宝接各接口请求提交类对象

HttpProtocolHandler接口

HttpRequestip

HttpResponse支付宝

HttpResultType部署

完整案例(须要有签约帐号)

** 一、首先咱们须要一个表单来提交订单信息**

要提交的5个参数:

-1 商户订单号-WIDout_trade_no(这个订单号能够自定义,(我是把本地的订单号赋值给它))

-2 订单名称-WIDsubject

  • 3付款金额-WIDtotal_fee

-4 商品展现网址-WIDshow_url

-5 商品描述-WIDbody (最后两个参数我没填也能够提交成功,可是必需要有这些参数)

二、须要一个用来获取这些订单信息并提交的页面

在这个页面中,将获取到的参数,以及支付宝配置的参数打包成一个Map<String,String>对象 这些配置参数有:

sParaTemp.put("service", AlipayConfig.service);
sParaTemp.put("partner", AlipayConfig.partner);
sParaTemp.put("seller_id", AlipayConfig.seller_id);
sParaTemp.put("_input_charset", AlipayConfig.input_charset);
sParaTemp.put("payment_type", AlipayConfig.payment_type);
sParaTemp.put("notify_url", AlipayConfig.notify_url);
sParaTemp.put("return_url", AlipayConfig.return_url);

接着创建支付请求

String sHtmlText = AlipaySubmit.buildRequest(sParaTemp,"get","确认");
//这一部分就是构建出一个表单来,而后提交
		out.println(sHtmlText);

三、而后部署起来,支付完成后,就会跳转到配置文件中的return_url域所指定的页面。

这里支付宝会回传 三个参数:

一、支付宝交易号-trade_no 这个是支付宝那边生成的

二、商铺订单号-out_trade_no,这个是以前能够自定义的订单号

三、交易状态-trade_status

( TRADE_FINISHED(表示交易已经成功结束,并不能再对该交易作后续操做); TRADE_SUCCESS(表示交易已经成功结束,能够对该交易作后续操做,如:分润、退款等);)

以后还会计算通知验证结果

boolean verify_result = AlipayNotify.verify(params);
//这个会决定是验证成功仍是验证失败

即使是交易成功的状况下,也可能会验证失败(个人就是, 我能获得TRADE_SUCCESS的交易状态)

但既然能获得交易是否成功的状态就够了,我没有去管这个通知验证问题。

我在获得交易成功的状态时,就能够根据返回的订单号修改相应订单的信息。

相关文章
相关标签/搜索