23、【支付模块开发】——Java对接支付宝步骤(沙箱环境)

简介: 1、下载导入项目https://docs.open.alipay.com/54/104506 打开支付宝接口官网:image.png我们下载Java版Demo下载之后解压,然后我们用IDEA导入这个Demo项目~image.

1、下载导入项目

https://docs.open.alipay.com/54/104506 打开支付宝接口官网:

img_331cc2d685e4947d18d32c39477be0bc.png
image.png

我们下载Java版Demo
下载之后解压,然后我们用IDEA导入这个Demo项目~
img_0e10ec791b6d6023fd0e85cb964bc249.png
image.png

然后,我们下载一个我们后面需要生成生成RSA密钥的工具: https://docs.open.alipay.com/291/105971
由于我是在Win平台开发,所以下载自己操作系统对应的版本就行:
img_ef6c4b8aa52ca2a35fb815fe11b48637.png
image.png

下载之后我们就先放一边啦~

导入项目之后,我们要查看自己导入的项目是否报错,如果出现报错,可能要调整一下自己的项目环境:


img_352007b025e8552614256a7c7c2b1d83.png
image.png

好,配置好项目时候,我们先不着急运行项目,
我们打开zhifubao.properties,显而易见,这是一个配置文件,那么我们记下来就将这个配置文件的相关配置配好~

img_1577bd3f5b63ae4e60029336ac94adba.png
image.png

2、配置好配置文件

由于我们测试的时候沙箱环境:
首先:
1、打开支付宝API官网的沙箱位置:https://openhome.alipay.com/platform/appDaily.htm?tab=info
打开这个网址,我们就会看到下面界面:

img_c28203b9a08c66c1bc20fed07f0c6bbb.png
image.png

首先我们看到相关参数,我们不管,我们一步步按照官网给的Demo里面的配置文件一个个将配置文件配好即可~

2、打开zhifubao.properties配置文件,我们就会看到下面代码:

img_5f04d714bfffc030fa68d443b503e6be.png
image.png

首先我们先配置最上面的四行:

# 支付宝网关名、partnerId和appId
open_api_domain = https://openapi.alipay.com/gateway.do
mcloud_api_domain = http://mcloudmonitor.com/gateway.do
pid = 此处请填写你的PID
appid = 此处请填写你当面付的APPID

这四行我们根据沙箱环境里面给的对应参数来配置

img_5f5496015f26a0b8aa8fd3194bf2ed48.png
image.png

mcloud_api_domain这个参数我们不需要改变~

3、接下来就是配置公钥和私钥了
我们打开上面再这个链接下载的支付宝官网提供的公钥私钥生成工具:https://docs.open.alipay.com/291/105971
解压之后:

img_16336d8917e47463a9c58c786b230bef.png
image.png

双击: RSA签名验签工具.bat
由于我们这次选择的是RSA2密钥方式:所以我们选择密钥长度为2048的方式:
img_3965abd021acf3ad46d34289acdd4f20.png
image.png

点击生成密钥
接下来我们配置Demo中配置文件的下两行

# RSA私钥、公钥和支付宝公钥
private_key = 此处请填写你的商户私钥且转PKCS8格式
public_key = 此处请填写你的商户公钥

将上面密钥生产工具生成的私钥和公钥复制到对应的地方即可:
4、下面一步,我们配置支付宝公钥,这一步我们要回到沙箱环境中:


img_54ef7318b0a263788a2c4979edc4e2c3.png
image.png

对这一行进行操作,首先我们复制上面密钥工具生成的公钥,然后再支付宝沙箱环境页面,点击查看公钥,然后点击修改,删除原来的,然后将我们刚才在密钥生成工具生成的公钥粘贴到里面:

img_311cd3cb02be0bd3ceb8205e5a0d56cd.png
image.png

点击保存:
然后点击查看支付宝公钥:
img_20a522170a5253258880b159b352e7f4.png
image.png

img_f14eb54262cc71ebb0f6dc02217d3a75.png
image.png

然后复制里面的支付宝公钥,下一步回到我们的Demo项目中,打开我们的 zhifubao.properties配置文件,将复制的支付宝公钥放到下面参数的配置上,记得把原来配置文件里默认的删除掉,

#SHA256withRsa对应支付宝公钥
alipay_public_key = 

img_5d4ec4eb0f933d35b5c3364eafd4a4af.png

这个是默认注释的,因为我们选中的是 #SHA256withRsa秘钥方式,
下面的参数选择默认的就差不多啦。。
到此,我们的支付宝Demo的配置文件算是配置好了~

3、运行Demo:

配置好配置文件之后,我们运行一下Demo的Main函数:发现项目可以正常跑起来了(如果你发发现你的项目报错,可能就是配置配置文件相关地方配置错了,根据错误提示一步步排查即可

img_399fdb3cb74e14836029192646486945.png

运行起来之后我们现在寻找输出日志里面一个参数:


img_34116b02bb6a5fbc434b14173f19ade7.png
image.png

我们复制冒号里面的内容
打开草料二维码,将冒号里面的内容生成二维码:


img_85f49e68f82f66afc91ffbad44cf9f5e.png
image.png

然后在沙箱环境中下载沙箱版支付宝:

img_4a1c0f5b480c94eed702c532a356f62f.png
img_3a194f75236c48801f82b33eec849fba.png
image.png

用沙箱版支付宝登录我们的买家账号,然后扫描生成的二维码,就发现可以付款啦~


img_d26d244cd184d644d445e3a1f9678ce5.png
image.png

img_c5f160f9e50f4afe5911417f0538cf11.png
image.png
相关文章
|
13天前
|
Java API Spring
打造未来电商新引擎:揭秘Java可扩展API设计,让支付与物流灵活如丝,引领电商时代潮流!
【8月更文挑战第30天】本文通过电商平台案例,探讨了如何设计可扩展的Java API。首先定义支付和物流服务的接口与抽象类,然后实现具体服务,接着引入工厂模式或依赖注入管理服务实例,最后通过配置实现灵活扩展。这种设计确保了应用架构的灵活性和长期稳定性。
32 3
|
6天前
|
安全 Java API
【本地与Java无缝对接】JDK 22外部函数和内存API:JNI终结者,性能与安全双提升!
【9月更文挑战第6天】JDK 22的外部函数和内存API无疑是Java编程语言发展史上的一个重要里程碑。它不仅解决了JNI的诸多局限和挑战,还为Java与本地代码的互操作提供了更加高效、安全和简洁的解决方案。随着FFM API的逐渐成熟和完善,我们有理由相信,Java将在更多领域展现出其强大的生命力和竞争力。让我们共同期待Java编程新纪元的到来!
29 11
|
22天前
|
Oracle Java 关系型数据库
【Java 第二篇章】准备一下JDK环境
【8月更文挑战第1天】 在Windows 10中配置Java环境变量需先安装JDK,然后设置`JAVA_HOME`指向JDK目录,并更新`Path`变量加入`%JAVA_HOME%\bin`,以便全局访问Java命令。最后通过命令提示符输入`java -version`和`javac -version`验证配置是否成功。
17 1
|
29天前
|
SQL 存储 Java
完整java开发中JDBC连接数据库代码和步骤
该博客文章详细介绍了使用JDBC连接数据库的完整步骤,包括加载JDBC驱动、提供连接URL、创建数据库连接、执行SQL语句、处理结果以及关闭JDBC对象的过程,并提供了相应的示例代码。
|
11天前
|
Java 数据库连接 缓存
Hibernate性能调优:五大秘籍,让应用效能飙升,告别慢如蜗牛的加载,体验丝滑般流畅!
【8月更文挑战第31天】本文深入探讨了提升Hibernate应用性能的五大技巧,包括选择合适的缓存策略、优化查询语句、合理使用Eager与Lazy加载、批量操作与事务管理以及利用索引和数据库优化。通过正确配置多级缓存、分页查询、延迟加载、批量处理及合理创建索引,能够显著提高应用响应速度与吞吐量,改善用户体验。这些技巧需根据具体应用场景灵活调整,以实现最佳性能优化效果。
26 0
|
18天前
|
缓存 NoSQL Java
【Azure Redis 缓存】定位Java Spring Boot 使用 Jedis 或 Lettuce 无法连接到 Redis的网络连通性步骤
【Azure Redis 缓存】定位Java Spring Boot 使用 Jedis 或 Lettuce 无法连接到 Redis的网络连通性步骤
|
2月前
|
Java 关系型数据库 开发工具
Java开发者必备技能与工具:构建高效开发环境的指南
【7月更文挑战第23天】作为Java开发者,掌握核心技能、熟练使用开发工具与框架、不断提升自己的软技能是构建高效开发环境的关键。希望本文能够为广大Java开发者提供一些有价值的参考和启示,助力大家在Java开发的道路上越走越远。
|
28天前
|
Oracle Java 关系型数据库
简单记录在Linux上安装JDK环境的步骤,以及解决运行Java程序时出现Error Could not find or load main class XXX问题
本文记录了在Linux系统上安装JDK环境的步骤,并提供了解决运行Java程序时出现的"Error Could not find or load main class XXX"问题的方案,主要是通过重新配置和刷新JDK环境变量来解决。
62 0
|
2月前
|
运维 监控 Java
函数计算产品使用问题之Java 17作为运行时环境,并已使用WebIDE完成代码的修改和调试,如何部署代码
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
2月前
|
存储 机器学习/深度学习 人工智能
人工智能平台PAI使用问题之特征平台是否可以与Java进行对接
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。