代码拉取完成,页面将自动刷新
同步操作将从 thlws/payment-thl 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
基于Java实现的 多平台支付(支付宝,微信,翼支付) 依赖库。
未接触过支付,觉得官方文档复杂, 但又需要快速接入支付功能的小白程序员,这个项目一定会让你省下不少力气,如果你是之前接入过各种支付的老鸟,这对你可能没什么吸引力,这个项目主要面向刚接触或未接触过支付的小伙伴,无论你是小白还是老鸟,喜欢的话帮忙star下,感谢。
支付宝 org.thlws.payment.AlipayClient
方法名称 | 功能说明 |
---|---|
payInMobileSite | 手机网页支付 |
payInWebSite | 普通网站支付 |
preCreate | 创建预订单 |
pay | 刷卡支付(当面付) |
query | 支付查询 |
refund | 支付退款 |
cancel | 订单取消 |
微信支付 org.thlws.payment.WechatPayClient
方法名称 | 功能说明 |
---|---|
unifiedOrder | 统一下单(类似预订单) |
refund | 申请退款 |
reverse | 支付撤销 |
microPay | 刷卡支付 |
orderQuery | 支付查询 |
closeOrder | 订单关闭 |
openidQuery | 查询OpenId |
queryMicroMch | 查询小微收款人信息 |
postMicroMch | 申请开通小微收款功能 |
微信公众号 org.thlws.payment.WechatMpClient
方法名称 | 功能说明 |
---|---|
obtainOauthAccessToken | 获取accesToken(OAuth2) |
refreshOauthAccessToken | 刷新accesToken(OAuth2) |
isvalidOauthAccessToken | 验证token是否过期(OAuth2) |
generateWechatUrl | 生成微信规则URL |
obtainUserInfo | 获取用户资料 |
obtainAccessToken | 获取accesToken(普通) |
obtainJsApiTicket | 获取JSAPI Ticket |
obtainTemplateId | 获取微信消息模板ID |
setupIndustry | 设置行业属性 |
sendMsgToUser | 发送微信通知 |
翼支付 org.thlws.payment.BestPayClient
方法名称 | 功能说明 |
---|---|
barcode | 扫码支付 |
query | 订单查询 |
refund | 订单退款 |
reverse | 订单撤销 |
前置条件
快速上手
//支付宝支付
AlipayCore alipayCore = clientBuilder
.setAlipayPublicKey(alipay_public_key_2)
.setAppId(appid_2)
.setPrivateKey(alipay_public_key_2)
.setSignType(AlipayConstants.SIGN_TYPE_RSA2).build();
AlipayTradeRequest request = new AlipayTradeRequest();
request.setTotalAmount("0.01");
request.setStoreId("123456");
request.setOperatorId("hanley001");
request.setAuthCode("288609492126942746");
request.setOutTradeNo(System.currentTimeMillis()+"");
request.setSubject("测试买单001");
AlipayTradeResponse response = AlipayClient.pay(request,alipayCore);
boolean isSuccess = response.isSuccess();
//微信支付(刷卡)
String apiKey = "test_wechat_apikey";
WechatPayRequest request = new WechatPayRequest();
request.setAppId("test_wechat_appid");
request.setMchId("test_wechat_mchid");
request.setSpbillCreateIp(NetUtil.getLocalhostStr());
request.setTotalFee("1");
request.setAttach("some messages");
request.setOutTradeNo(ThlwsBeanUtil.getRandomString(32));
request.setAuthCode("13459326110303327");
request.setBody("pay test");
WechatPayResponse response = WechatPayClient.microPay(request,apiKey);
boolean isSuccess = response.isSuccess();
String message = response.getMessage();
//翼支付
BarcodePayRequest request = new BarcodePayRequest();
request.setMerchantId(merchantId);
request.setBarcode("510094008028763507");
request.setOrderNo( RandomUtil.randomNumbers(16));
request.setOrderReqNo( RandomUtil.randomNumbers(16));
request.setOrderDate("20171224121212");
request.setOrderAmt("1");
request.setProductAmt("1");
request.setGoodsName("测试商品");
request.setStoreId("00001025104487");
OrderResultResponse response = BestPayClient.barcode(request, key);
boolean isSuccess = response.isPaySuccess();
全部支付的入口在此,直接使用Client中的对应方法即可,测试功能请至test目录下参考Junit.
<dependency>
<groupId>org.thlws</groupId>
<artifactId>payment-thl</artifactId>
<version>1.0.8</version>
</dependency>
调用支付接口后,如何判断调用成功与否?
WechatPayResponse response = WechatPayClient.microPay(request,apiKey);
//flag == true 表示成功
boolean flag = response.isSuccess();
String message = response.getMessage();
System.out.println("isSuccess="+flag+", message="+message);
支持Android App吗
不支持Android App,有这方面需求的请至 微信APP支付 或 支付宝APP支付 .
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。