Java实现微信支付
一、业务需求
实现app微信支付,后端需要做生成预支付单,响应支付结果。
二、业务流程
查看官方文档
https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_3;
三、实现方法
3.1 创建微信工具类 ConstantUtil
[Java] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
public class ConstantUtil {
/**
* 微信开发平台应用ID
*/
public static final String APP_ID= "wx2421b1c4370ec43b" ;
/**
* 应用对应的凭证
*/
public static final String APP_SECRET= "1add1a30ac87aa2db72f57a2375d8fec" ;
/**
* 应用对应的密钥
*/
public static final String APP_KEY= "1add1a30ac87aa2db72f57a2375d8fec" ;
/**
* 微信支付商户号
*/
public static final String MCH_ID= "10000100" ;
/**
* 商品描述
*/
public static final String BODY= "充值" ;
/**
* 商户号对应的密钥
*/
public static final String PARTNER_key= "*******" ;
/**
* 商户id
*/
public static final String PARTNER_ID= "*******" ;
/**
* 常量固定值
*/
public static final String GRANT_TYPE= "client_credential" ;
/**
* 获取预支付id的接口url
*/
public static String GATEURL = "https://api.mch.weixin.qq.com/pay/unifiedorder" ;
/**
* 微信服务器回调通知url
*/
public static String NOTIFY_URL= "http://url" ; //可以访问的url
/**
* 微信服务器查询订单url
*/
public static String ORDER_QUERY= "https://api.mch.weixin.qq.com/pay/orderquery" ;
}
|
3.2 生成预支付订单
[Java] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|