java个人支付系统(springboot)

技术标签: 支付宝  java  个人支付  spring cloud  微信  

源码免费下载地址:关注微信公众号“虾米聊吧”,回复关键字“支付

 

随着移动支付的普遍发展,目前市场上基本已经形成支付宝和微信两大支付体系称霸的局面,因此各大商家、网站、平台等纷纷接入了支付宝和微信作为支付方式,然而 作为一个开发者我们都知道微信支付接口由始至终从没面向过个人终端用户,只能通过企业账号的方式接入,而支付宝,也在前几年就已经关闭了个人支付接口,其中缘由,想想就知道了。这可就苦恼了我们这些个体户呀,明明想到了一种赚钱方式,可就是没法直接将受益放入自己的口袋,那种手动操作的方式太不现实了,而我们又不可能去注册一个企业然后再申请接入,那。。。应该怎么办了,难道就没有办法了么?答案是肯定有的,详细教程如下

那么要怎么操作呢?下面是详细的步骤:

以下仅是粗略的介绍了称为商家以及项目接入支付的流程,详细操作手册见文档(下载地址文章末位),该接入亲测有效,而且我本人项目已接入。

1.申请成为商家

打开支付宝APP搜索“蚂蚁金服商家平台”

点击开通支付

点击立即签约

填写相关信息

注:现在费率貌似统一都是0.6%了,具体请自行查看官方文档。

然后就等待审核,大概是一个工作日的样子。

2.管理签约秘钥信息

签约成功后登录蚂蚁金服开放平台 点击右上角头像 进入秘钥管理

根据提示配置私钥和公钥,私钥根据提示下载支付宝RAS密钥生成器即可

 

 

3.开发接入

引入maven依赖

AlipayController,填入你的配置

部分代码如下:

 /**
     * 生成二维码
     *
     * @param rechargeRecord
     * @return
     * @throws AlipayApiException
     */
    @PostMapping("/precreate")
    @ResponseBody
    public AjaxResult getPayQrcode(ZyRechargeRecord rechargeRecord) {
        //此处获取当前会话的用户ID
//        Long userId = ShiroUtils.getUserId();
        Long userId = 101L;
        String orderNo = UUID.randomUUID().toString();
        rechargeRecord.setUserId(userId.intValue());
        rechargeRecord.setOrderNo(orderNo);
        rechargeRecord.setCreateTime(new Date());
        rechargeRecord.setRechargePoint(rechargeRecord.getRechargeMoney());
        //订单入库
        rechargeRecordService.save(rechargeRecord);
        response = alipayService.getQrCode();
        Map<String, Object> result = new HashMap<>(16);
        result.put("id", rechargeRecord.getOrderNo());
        result.put("qrCode", response.getQrCode());
        return AjaxResult.success(result);
    }

    /**
     * 查询支付结果
     *
     * @param outTradeNo
     * @return
     * @throws AlipayApiException
     */
    @PostMapping("/query/{outTradeNo}")
    @ResponseBody
    public AjaxResult queryPayState(@PathVariable String outTradeNo) throws AlipayApiException {
        boolean payState = alipayService.getPayState(outTradeNo, appId, privateKey, publicKey);
        return payState ? AjaxResult.success(1) : AjaxResult.error();
    }

至此个人支付已对接成功,你可以接入到自己的项目中去了,马上开启你的支付之旅吧!

效果如下:

 

 

 

有任何疑问请联系站长qq:193459197 

 

源码免费下载地址:关注微信公众号“虾米聊吧”,回复关键字“支付

关注微信公众号“虾米聊吧”,后续持续放送“技术架构和资料”干货!!!

 

   一个热衷于分享技术和生活的程序猿,让我们一起交流吧~      

                    

                  微信扫描二维码,关注我的公众号

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zwx19921215/article/details/99313451

智能推荐

R语言ggplot2可视化分面图(faceting)、可视化分面条形图(facet_wrap bar plot)、使用strip.text函数自定义分面图每个分面标题条带strip的大小(cutomi_Data+Science+Insight的博客-程序员宅基地_分面条形图

R语言ggplot2可视化分面图(faceting)、可视化分面条形图(facet_wrap bar plot)、使用strip.text函数自定义分面图每个分面标题条带strip的大小(cutomizesize of the strip on facets)

centos7部署LAMP+xcache(module模式)_weixin_33699914的博客-程序员宅基地

centos7通过RPM包部署LAMP+xcache (php module)环境要求:(1)一个虚拟主机提供phpMyadmin(2)一个虚拟主机提供WordPress(3)利用xcache缓存来进行页面加速(4)进行页面压力测试wp.magedu.com------&gt;提供WordPresspma.magedu.com----&gt;提供phpMyAdmin1、安装...

unity引用类型序列化_Unity使用JsonUtility对类对象,list<T>和字典进行序列化_weixin_32762821的博客-程序员宅基地

JsonUtility是5.3新增的用于序列化及反序列化的工具用法为using System;using System.Collections.Generic;[Serializable]public class Enemy{[SerializeField]string name;[SerializeField]List skills;public Enemy(string name, List ...

用html和js编写黑洞数,python_黑洞数_小薇LikC的博客-程序员宅基地

&gt;&gt;&gt; def main(n): start = 10**(n-1)+2 end = start*10-20 for i in range(start,end): i = str(i) big = ''.join(sorted(i,reverse=True)) big = int(big) little = ''.join(sorted(i)) little = int(litt...

建立团队的性能文化_weixin_30914981的博客-程序员宅基地

之前的性能测试博客大多都是介绍性能测试的方法、思路以及测试工具的使用,可以称之为“务实”。这篇博客,聊聊“务虚”——如何建立团队的性能文化。。。首先来看看团队中不同角色,他们对性能的关注点都是什么?然后拆分开,从不同视角聊聊如何针对性的建立团队的性能文化。。。不同视角的性能关注点角色视角性能关注点产品用户数、使用时间、使用场景开发系统架构...

LTE下行参考信号和上行参考信号有哪些 MBSFN 参考信号是什么_weixin_30810583的博客-程序员宅基地

LTE下行参考信号和上行参考信号有哪些在R9中,下行定义了四种参考信号,分别为分别为小区专用参考信号(C-RS),用户专用参考信号(UE-RS,又称DM-RS),MBSFN参考信号,位置参考信号(P-RS)。在R10中,下行定义了五种参考信号,分别为小区专用参考信号(C-RS),用户专用参考信号(UE-RS,又称DM-RS),MBSFN参考信号,位置参考信号(P-RS),以及CSI参考信号(C...

随便推点

hadoop HA异常:Unable to start failover controller. Parent znode does not exist._念雅小轩的博客-程序员宅基地

在namenode上执行./hadoop-daemon.sh start zkfc时,发现zkfc进程未启动,且报出如下错误:很明显,是由于Zookeeper上不存在namenode的临时节点。解决方法:1、登录Zookeeper,执行./zkCli.sh进入Zookeeper终端,执行如下命令:ls /结果发现,果然没有hadoop-ha节点。2、登录namenode节点,并执行...

蓝本(blueprint)_inhacker的博客-程序员宅基地

1.概念  将视图方法模块化,既当大量的视图函数放在一个文件中,很明显是不合适,最好的方案是根据功能将路由合理的划分到不同的文件中;而蓝本就是为了解决这个问题而出现的。2.使用 2.1 导入库类from flask import Blueprint2.2 创建对象user = Blueprint('user', __name__, url_prefix='/user')mian=...

android 外部内容分享到app内,Android分享其他APP的内容之文本和图片_漫原的博客-程序员宅基地

像今日头条,网易新闻,我们如何才能分享其内容呢?本地的图库的图片,该如何拿到呢?Android 提供了应用程序间的内容分享机制,这里只对分享其他应用的内容举例。如果想要分享其他应用数据,首先要在manifest文件上注册,如下:android:label="@string/friend"android:icon="@mipmap/friend"&gt;这里三个分别解释下:代表数据源就一个,且数据类...

web项目打包到上线教程_web项目打包,发布以及部署_研究生欧阳同学呀的博客-程序员宅基地

如何将web工程打包war和解包war(1):打包war:进入工程应用的根目录,比如:/webapps/myjspweb;(2)把整个web应用打包为myjspwar.war文件,命令如下:jarcvfmyjspweb.war*.*(3):解包:jarxvfhelloapp.war通常的网站,很多是以war包形式发布的下边介绍如何自行制作war包首先要求制作war包的环境安装j2sdk-...

php backdoor creator encoder,Raven2 渗透(phpmailer漏洞+UDF提权)_不成萌便成猛的博客-程序员宅基地

本帖最后由 Ybwh 于 2020-7-19 01:05 编辑本文原创作者Ybwh,本文属i春秋原创奖励计划,未经许可禁止转载!开机后扫描网段拿到ip地址clipboard2.png (73.96 KB, 下载次数: 1)2020-4-22 11:17 上传扫描目录发现vendor文件找到path文件发现flag1clipboard3.png (56.06 KB, 下载次数: 0)2020-4-2...

推荐文章

热门文章

相关标签