一个项目搞定支付宝,微信支付!

2,568 阅读2分钟

真的宝藏,裂墙推荐!

spring-boot-pay Star 6.3k

gitee.com/52itstyle/s…

该项目基于 Spring Boot 搭建,是支付宝,微信,银联支付服务详细代码案例 ,所有支付 Demo 测试通过,真实有效。代码案例包含功能如下,几乎涵盖了常用的支付场景:

支付宝

  • 扫码支付

  • 电脑支付

  • WAP支付

  • APP支付服务端

微信

  • 扫码支付(模式一二)

  • 公众号H5支付

  • WAP支付

银联

  • 电脑支付

  • WAP支付

案例基于如下技术栈开发:

  • JDK1.8

  • Maven

  • IDEA

  • SpringBoot2.2.6

  • Dubbo2.7.3

  • zookeeper3.5.3

案例截图

图片

图片

下面是问小柒的一些问题:

0)部署本项目的案例可能会遇到什么坑?

下面这几篇博文记录了我遇到的 Bug ,有类似的问题可以看看下面的博客:

开发银联支付之前要做的那些事儿

blog.52itstyle.vip/archives/30…

开发微信支付之前要做的那些事儿

blog.52itstyle.vip/archives/30…

内网穿透神器:Ngrok在支付中的正确使用姿势

blog.52itstyle.vip/archives/29…

那些年支付宝微信银联支付遇到的坑

blog.52itstyle.vip/archives/13…

微信支付linux下java.net.UnknownHostException: api.mch.weixin.qq.com

blog.52itstyle.vip/archives/16…

JAVA实现微信退款报错unexpected end of file from server

blog.52itstyle.vip/archives/15…

支付宝扫码支付和微信扫码支付业务场景及问题记录

blog.52itstyle.vip/archives/26…

微信扫码支付(模式一)遇到的那些坑

blog.52itstyle.vip/archives/13…

微信公众号H5支付遇到的那些坑

blog.52itstyle.vip/archives/14…

阿里云HTTPS证书服务

blog.52itstyle.vip/archives/96…

SpringBoot开发案例之整合Swagger篇

blog.52itstyle.vip/archives/14…

SpringBoot开发案例之整合Dubbo分布式服务

blog.52itstyle.vip/archives/34…

1)为什么会有这个一个项目?

因为平台有多个项目,每个项目都有支付模块,所以就单独出来了一个服务,这样就可以复用呗。

2)服务通过什么方式调用?

当然是 RPC 了,通过注册中心调用服务,技术栈 Zookeeper + Dubbo,这两个玩意都可以做集群。

3)使用 RPC 有什么好处?

一是安全啊,我们项目部署在私有云,注册中心一般不会对外开放,那就不存在 HTTP 接口所谓的鉴权了;二是高效啊,毕竟 RPC 是基于四层协议的,相对来说的确会高那么一点点,这个大家可以自行测试,但是我觉得对于大部分公司,这个不重要。

4)这个项目可以拿来即用吗?

当然可以,只要只配置好相关参数,把接口类打个包,扔给消费者就是了,当然了,一些业务逻辑还是需要自己去实现的。

5)如何保证高可用?

那就部署多个服务,Dubbo 默认负载均衡策略是轮询,你也可以配置成其他策略,比如根据机器配置设置加权之类的。Zookeeper 也可以啊,保证 2N+1 台就是了。

6)有什么相对我说的吗?