微信和支付宝集成封装的sdk 需要自己拉代码到本地进行打包

https://github.com/sunuping/jm-pay.git

pom.xml

     <!--支付宝--><dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-sdk-java</artifactId><version>4.34.0.ALL</version></dependency><!--微信--><dependency><groupId>com.github.wechatpay-apiv3</groupId><artifactId>wechatpay-java</artifactId><version>0.2.4</version></dependency><!--集成支付sdk--><dependency><groupId>org.jm</groupId><artifactId>jm-pay</artifactId><version>2.6</version></dependency>

application.yml 配置支付宝和微信支付配置

jm:ali:appid: xxxrsa-privateKey: xxxnotify-url: https://xxx/pay/callbackreturn-url: https://xxxgateway-url: https://openapi.alipay.com/gateway.docharset: UTF-8format: jsonalipay-publicKey: xxxsign-type: RSA2wx:api-v3-key: xxxprivate-key-path: E:\xxxx\apiclient_key.pemprivate-key: xxxxmch-id: xxxappid: xxxmch-serial-number: xxxnotify-url: https://xxxx/pay/callback

调用支付

package org.jm.pay.constant;/*** @author kong*/
public class JmAlipayTypeConstant {/*** 支付宝h5支付*/public static final String ALIPAY_H5 = "alipay_h5";/*** 支付宝pc支付*/public static final String ALIPAY_PC = "alipay_pc";/*** 支付宝app支付*/public static final String ALIPAY_APP = "alipay_app";
}
package org.jm.pay.constant;/*** @author kong*/
public class JmWxPayTypeConstant {/*** 微信h5支付*/public static final String WX_H5 = "wx_h5";/*** 微信pc支付*/public static final String WX_PC = "wx_pc";/*** 微信native支付*/public static final String WX_NATIVE = "wx_native";
}
     private final JmAlipayPc jmAlipayPc;private final JmAlipayH5 jmAlipayH5;private final JmWxPayNative jmWxPayNative;private final JmWxPayH5 jmWxPayH5;@Autowiredpublic PayServiceImpl(JmAlipayPc jmAlipayPc, JmAlipayH5 jmAlipayH5, JmWxPayNative jmWxPayNative, JmWxPayH5 jmWxPayH5) {this.jmAlipayPc = jmAlipayPc;this.jmAlipayH5 = jmAlipayH5;this.jmWxPayNative = jmWxPayNative;this.jmWxPayH5 = jmWxPayH5;}

支付参数

JmPayParam jmPayParam = new JmPayParam();jmPayParam.setOrderNo("订单编号");jmPayParam.setOrderName("订单名称");jmPayParam.setDesc("订单描述");//订单金额jmPayParam.setAmount(param.getAmount());

调用支付

    private JmPayVO pay(JmPayParam param, String type) {switch (type) {case JmAlipayTypeConstant.ALIPAY_H5:return this.jmAlipayH5.pay(param);case JmAlipayTypeConstant.ALIPAY_PC:return this.jmAlipayPc.pay(param);case JmWxPayTypeConstant.WX_H5:return this.jmWxPayH5.pay(param);case JmWxPayTypeConstant.WX_NATIVE:return this.jmWxPayNative.pay(param);default:throw new ErrorException("支付异常");}}

支付结果

        JmPayVO payVO = this.pay(jmPayParam,param.getPayType());

spring boot 微信 支付宝 集成 开源jm-pay sdk相关推荐

  1. 如何利用Spring Boot 微信点餐开源系统

    由于细节内容实在太多啦,所以只把部分知识点整理出来粗略的介绍,每个小节点里面都有更细化的内容! 接下来开始分享啦 架构 前后端分离: 补充: setting.xml 文件的作用:settings.xm ...

  2. Spring Boot 微信点餐开源系统

    架构 前后端分离: Nginx与Tomcat的关系在这篇文章,几分钟可以快速了解: " https://www.jianshu.com/p/22dcb7ef9172 补充: setting. ...

  3. Spring Boot 微信点餐开源系统!

    点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...

  4. Spring Boot最新版集成邮件发送功能大全

    Spring Boot最新版集成邮件发送功能大全 前言 一.开启SMTP服务并获取授权码 二.创建Spring Boot项目 1.配置邮箱基本信息: 2.简单邮件发送: 3.发送带附件的邮件: 5.使 ...

  5. Spring Boot项目中集成Elasticsearch,并实现高效的搜索功能

    Spring Boot项目中集成Elasticsearch 前言 环境准备 引入依赖 配置Elasticsearch连接信息 定义实体类 定义Elasticsearch操作接口 实现搜索功能 总结 前 ...

  6. Spring Boot 极简集成 Shiro

    点击关注公众号,Java干货及时送达 1. 前言 Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了认证,授权,加密,和会话管理. Shiro有三大核心组件: Subject: ...

  7. spring boot、mybatis集成druid数据库连接池,实现mysql cluster HA负载均衡访问

    spring boot.mybatis集成druid数据库连接池,实现mysql cluster HA负载均衡访问 1.原理实现介绍 本质来说使用连接池是为了节省创建.关闭数据库连接的资源消耗,从而提 ...

  8. 10、Spring Boot 2.x 集成 Log4j2

    1.10 Spring Boot 2.x 集成 Log4j2 完整源码: Spring-Boot-Demos 转载于:https://www.cnblogs.com/Grand-Jon/p/99980 ...

  9. 使用 CODING 进行 Spring Boot 项目的集成

    本文作者:CODING 用户 - 高文 持续集成 (Continuous integration) 是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可 ...

最新文章

  1. softmax layer 简单理解以及实际例子【有白话讲解】
  2. 美团外卖持续交付的前世今生
  3. spring入门(一)
  4. CodeForces - 351E Jeff and Permutation(贪心)
  5. CCNA-第九篇-OSPF下+VLAN开篇初介绍
  6. future promise shared_future简单使用
  7. 一些不错的C++网站[秋镇菜]
  8. java main 静态代码_java中没有main方法怎么怎么执行静态块中的内容
  9. egg 完整实例 增删改查MongoDB,websocket
  10. 英雄联盟android,安卓ARPG佳作 《英雄联盟(League of Heroes)》
  11. uva1391-Astronauts
  12. 轻量级过程改进之项目计划
  13. Java实现生成并下载Excel文件
  14. 深度剖析C语言中整形的取值范围
  15. echarts饼图自动动画_echarts饼图定时自动切换
  16. win98模拟器_Windows98模拟器,手机也能这样玩!
  17. w10 保护你的计算机,win10smartscreen筛选器怎么关闭-“windows已保护你的电脑”的关闭方法 - 河东软件园...
  18. 初学者如何搭建React开发环境并且创建react项目
  19. Beta阶段展示博客
  20. 《CDN 之我见》系列三:详解篇(网络优化)

热门文章

  1. 网络不稳定时python爬虫技巧
  2. Jenkins入门教程之--构建软件项目
  3. 一台电脑变多台——BeTwin 2.0.0.419 破解版+虚拟驱动+安装说明
  4. 韦小宝七个老婆的武功排名
  5. css3实现文字闪烁效果的三种展示方式
  6. java 类 方法 带泛型_java中的泛型类和泛型方法
  7. vue v-html scoped,基于vue中的scoped坑点解说
  8. 微信小程序接入物流快递查询的接口API步骤
  9. 05. SpringBoot整合mybatis
  10. wsl的网络变得很慢是什么原因