资源简介
这是一份对于微信小程序支付sdk的二次封装,开箱即用,可以直接调用方法,微信原本的sdk仅仅是个demo架子,有任何使用疑问欢迎讨论!
![](http://www.nz998.com/pic/71452.jpg)
代码片段和文件信息
package com.weixin.pay;
import com.weixin.pay.constants.WXPayConstants;
import com.weixin.pay.constants.WXPayConstants.SignType;
import com.weixin.pay.util.DateTimeUtil;
import com.weixin.pay.util.WXPayUtil;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
public class WXPay {
private WXPayConfig config;
private SignType signType;
private boolean autoReport;
private boolean useSandbox;
private String notifyUrl;
private WXPayRequest wxPayRequest;
public WXPay(final WXPayConfig config) throws Exception {
this(config null true false);
// this(config null true true);
}
public WXPay(final WXPayConfig config final boolean autoReport) throws Exception {
this(config null autoReport false);
// this(config null autoReport true);
}
public WXPay(final WXPayConfig config final boolean autoReport final boolean useSandbox) throws Exception {
this(config null autoReport useSandbox);
}
public WXPay(final WXPayConfig config final String notifyUrl) throws Exception {
this(config notifyUrl true false);
}
public WXPay(final WXPayConfig config final String notifyUrl final boolean autoReport) throws Exception {
this(config notifyUrl autoReport false);
}
public WXPay(final WXPayConfig config final String notifyUrl final boolean autoReport final boolean useSandbox) throws Exception {
this.config = config;
this.notifyUrl = notifyUrl;
this.autoReport = autoReport;
this.useSandbox = useSandbox;
if (useSandbox) {
this.signType = SignType.MD5; // 沙箱环境
} else {
this.signType = SignType.MD5; // 此处原来不是MD5!!!
}
this.wxPayRequest = new WXPayRequest(config);
}
private void checkWXPayConfig() throws Exception {
if (this.config == null) {
throw new Exception(“config is null“);
}
if (this.config.getAppID() == null || this.config.getAppID().trim().length() == 0) {
throw new Exception(“appid in config is empty“);
}
if (this.config.getMchID() == null || this.config.getMchID().trim().length() == 0) {
throw new Exception(“appid in config is empty“);
}
if (this.config.getCertStream() == null) {
throw new Exception(“cert stream in config is empty“);
}
if (this.config.getWXPayDomain() == null) {
throw new Exception(“config.getWXPayDomain() is null“);
}
if (this.config.getHttpConnectTimeoutMs() < 10) {
throw new Exception(“http connect timeout is too small“);
}
if (this.config.getHttpReadTimeoutMs() < 10) {
throw new Exception(“http read timeout is too small“);
}
}
/**
* 向 Map 中添加 appid、mch_id、nonce_str、sign_type、sign
* 该函数适
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
....... 278 2018-12-05 11:20 wxpay-sdk-master\.gitignore
....... 5256 2018-12-05 11:20 wxpay-sdk-master\pom.xm
....... 6692 2018-12-05 11:20 wxpay-sdk-master\README.md
....... 1514 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\card\CardBgColorEnum.java
....... 1363 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXConstants.java
....... 640 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXPayCodeEnum.java
文件 11630 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXPayConstants.java
....... 5114 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXURL.java
....... 1657 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\redis\RedisKeyEnum.java
....... 3201 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\redis\RedisKeyUtil.java
....... 4461 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\AESUtil.java
....... 5928 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\DateTimeUtil.java
文件 13023 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXPayUtil.java
文件 1634 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXPayxm
....... 6971 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXSignatureUtil.java
....... 948 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXUserUtil.java
....... 25954 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXUtils.java
文件 64346 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPay.java
文件 1974 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayConfig.java
文件 2114 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayConfigImpl.java
文件 1364 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayDomain.java
文件 3937 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayDomainSimpleImpl.java
文件 11232 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayReport.java
文件 10592 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayRequest.java
文件 2171 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\XxxWXPayConfigImpl.java
文件 12760 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\TestWXPay.java
....... 3591 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\WXAuthController.java
文件 15469 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\WXPayController.java
目录 0 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\card
目录 0 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants
............此处省略14个文件信息
- 上一篇:实战攻防之蓝队视角下的防御体系构建.docx
- 下一篇:ntko大文件上传
相关资源
- SpringBoot+H2+mybatis-plus59130
- 登录注册界面.zip48872
-
AN_BLE-SDKDH-C1_Teli
nk BLE SDK DeveloperHan - 数字华容道
- SSM+Shiro+redis实现单点登陆
- jstl-api-1.2和jstl-impl-1.2
- 基于MVC模式的会员管理系统
- 国内一家大型软件公司内部的正规软
- 仿windows记事本
- LzmaLib
- GUI银行管理系统
- 超市收银系统eclipse access大学课程设计
- 模拟ATM柜员机系统--连接数据库
- A*算法的2D演示(带源码)
- OPC插件OPC Core Components 2.00 SDK 2.20
- 代码审查表和代码审查实例
- 仿126 网易 163 邮箱 界面
- Tomcat6.x
- 简单的行编辑器
- 扫雷(MVC架构)
- 302 Found
- window ping命令加时间并记录日志
- 易语言-海康威视SDK-DEMO
- 微信小程序驾照考试题库demo完整
- 新闻列表源码(微信小程序)
- 微信小程序——音乐播放器
- 豆瓣图书微信小程序
- 微信小程序-仿网易云音乐
- springboot+rabbitmq项目demo(亲测可正常运
- 美松打印机SDK MsPrintSDK-Demo-DLL-CShare-
评论
共有 条评论