微信支付-开源项目WxJava简单使用(公众号示例)
直接开始正片
一、maven引入jar
<dependency> <groupId>com.github.binarywang</groupId> <artifactId>(不同模块参考下文)</artifactId> <version>4.1.0</version> </dependency>
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-pay</artifactId>
<version>4.1.0</version>
</dependency>
二、配置文件
在application.yml中,加入如下配置,(下面的值我都轻微的改过了,不可以拿过去就用哦!) 其中p12证书,这里没写,但是注释写的很清楚,不影响下单。本人目前接触到它的作用,退款时候需要用到,其他还没用到过。能力有限罪过,罪过。
三、装载配置
将上述,yml中配置的参数,装载进去。以下直接官方例子,开抄如下:
WxPayProperties.java
WxPayConfiguration
package com.hky.config.wxpay;
import com.github.binarywang.wxpay.config.WxPayConfig;
import com.github.binarywang.wxpay.service.WxPayService;
import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @author Binary Wang
*/
@Configuration
@ConditionalOnClass(WxPayService.class)
@EnableConfigurationProperties(WxPayProperties.class)
@AllArgsConstructor
public class WxPayConfiguration {
private WxPayProperties properties;
@Bean
@ConditionalOnMissingBean
public WxPayService wxService() {
WxPayConfig payConfig = new WxPayConfig();
payConfig.setAppId(StringUtils.trimToNull(this.properties.getAppId()));
payConfig.setMchId(StringUtils.trimToNull(this.properties.getMchId()));
payConfig.setMchKey(StringUtils.trimToNull(this.properties.getMchKey()));
payConfig.setSubAppId(StringUtils.trimToNull(this.properties.getSubAppId()));
payConfig.setSubMchId(StringUtils.trimToNull(this.properties.getSubMchId()));
payConfig.setKeyPath(StringUtils.trimToNull(this.properties.getKeyPath()));
// 可以指定是否使用沙箱环境
payConfig.setUseSandboxEnv(false);
WxPayService wxPayService = new WxPayServiceImpl();
wxPayService.setConfig(payConfig);
return wxPayService;
}
}
四、编写controller
继续抄官方demo:(由于原demo中内容较多,只保留一个统一下单,其他的自行去官方demo查看)
五、postman测试接口
{
"body":"hky测试支付",
"totalFee":"1",
"notifyUrl":"https://www.hanky.work:8890",
"outTradeNo":"hanky34kdsjfkajsdf",
"spbillCreateIp":"127.0.0.1",
"tradeType":"JSAPI",
"openid":"oOiaA6pjAWn09asbMQ5SPcI4M9r8"
}
简单解释一下:
上一篇:
uniapp开发微信小程序-2.页面制作
下一篇:
【微信小程序】返回上一页刷新或当前页刷新
