微信支付开发(一)

1、注册微信支付商户号

	https://pay.weixin.qq.com/static/product/product_index.shtml#payment_product

在这里插入图片描述

点击链接,在平台上进行注册。不过注册需要的资料还挺多的,需要有营业执照或者证明。要是提供不了这些信息的开发者可以网上找一下别人用于开发测试的商户号使用一下,或者找熟人要。

2、下载微信支付SDK

https://pay.weixin.qq.com/wiki/doc/api/native_sl.php?chapter=11_1

在这里插入图片描述

点击链接,在里面下载JAVA SDK

3、修改SDK内容

1)导入SDK需要的包

把下载好的SDK进行解压,然后在IDEA中打开,在进行包下载后,还是有一些没包没有下载下来

在这里插入图片描述
这时候得自己动手在Modules settings中下载,在IDEA中右键点击文件夹WxPayAPI_JAVA选择Open Modules settings,然后在点击Libraries,在点击+号,选择from Moven Repository输入想要下载的包名就可以了

在这里插入图片描述
下载完包后,就没有报错了

在这里插入图片描述

2)创建一个类用于继承WXPayConfig类

package com.github.wxpay.sdk;

import java.io.InputStream;

public class MyWXPayConfig extends WXPayConfig{
    String getAppID() {
        return "";                 //返回APPID,填写自己的APPID
    }

    String getMchID() {
        return "";                //返回商户号,填写自己的商户号
    }

    String getKey() {
        return "";				//返回key,填写自己的key
    }

    InputStream getCertStream() {
        return null;
    }

    IWXPayDomain getWXPayDomain() {
    	//这个得自己去创建这个类并实现IWXPayDomain接口,实例化MyWXPayDomain 
        MyWXPayDomain myWXPayDomain=new MyWXPayDomain();      
        return myWXPayDomain;
    }
}

3)创建一个类用于实现IWXPayDomain接口

package com.github.wxpay.sdk;

public class MyWXPayDomain implements IWXPayDomain{
    public void report(String domain, long elapsedTimeMillis, Exception ex) {

    }

    public DomainInfo getDomain(WXPayConfig config) {
        //创建域名信息类,并填写域名
        DomainInfo domainInfo=new DomainInfo("api.mch.weixin.qq.com",true);
        return domainInfo;
    }
}

4)创建一个包用于实现微信支付生成

package com.zwy;

import com.github.wxpay.sdk.MyWXPayConfig;
import com.github.wxpay.sdk.WXPay;

import java.util.HashMap;
import java.util.Map;

public class WXDemo {
    public static void main(String[] args) throws Exception {
        //创建配置对象
        MyWXPayConfig config=new MyWXPayConfig();
        WXPay wxPay=new WXPay(config);

        //创建支付信息集合
        Map<String,String> data=new HashMap<String, String>();
        data.put("body","充值中心");//商品描述
        data.put("out_trade_no","2021062501201407033233368018");//商户订单号,一般按时间生成唯一的订单号
        data.put("device_info","");//设备号
        data.put("fee_type","CNY");//货币类型,CNY是分
        data.put("total_fee","1");//总金额,1代表支付一分钱
        data.put("spbill_create_ip","123.12.12.123");//终端IP
        data.put("notify_url","https://www.weixin.qq.com/wxpay/pay.php");//通知地址,用户支付成功,会按照这个地址通知商户
        data.put("trade_type","NATIVE");//交易类型,NATIVE是Native支付
        data.put("product_id","13");//商品ID,trade_type=NATIVE时,此参数必传。


        Map<String,String> resp=wxPay.unifiedOrder(data);
        for(Map.Entry<String,String> entry:resp.entrySet()){ //遍历返回的信息,按行打印出来
            String key=entry.getKey();
            String value=entry.getValue();
            System.out.println(key+":"+value);
        }

        }

}

4、结果显示

在这里插入图片描述
想要显示支付的二维码,可以把code_url的内容复制到二维码生成器中就可以显示支付的二维码了,现在这个二维码可能是没有效果的,因为这个二维码是有时间限制的。
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

szzyjsxyzwy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值