谷粒商城实战(029 业务-订单支付模块-支付宝支付2)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强

总时长 104:45:00 共408P

此文章包含第305p-第p310的内容


代码编写

前端代码

这里使用的是jsp
在这里引用之前配置的各种支付信息
在这里插入图片描述

在这里插入图片描述
在AlipayConfig.java里
在这里插入图片描述

这里是调用阿里巴巴写的一个alipayClient的返回一个页面字符串(html字符串)的方法,然后输出到页面
在这里插入图片描述
这里我们封装了一个支付工具类
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

可以跟配置文件里的以alipay开头的配置进行绑定
在这里插入图片描述
在这里插入图片描述

绑定跳转的支付页
在这里插入图片描述
编写action请求
在这里插入图片描述
在这里插入图片描述

支付宝只识别2位小数的金额 否则会报错,这里我们设置2位金额并向上取余
在这里插入图片描述

取余模式 如 四舍五入 向上取余,向下取余等
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这里的标题我们自己设置 我们选择了商品名称
在这里插入图片描述
备注我们设置了商品的销售属性
在这里插入图片描述

在这里插入图片描述

响应的信息
在这里插入图片描述
这里的返回值设置成text/html类型 而不是 application/json
@GetMapping(value = “/payOrder”, produces = MediaType.TEXT_HTML_VALUE)
在这里插入图片描述
这个请求会跳转到支付宝给我们设置的表单 然后自动提交表单到另一页面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
跳回到成功回调页
在这里插入图片描述

在这里插入图片描述

支付成功同步回调功能

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
修改错误
在这里插入图片描述

请求写错了
在这里插入图片描述
类型错误
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

修改支付状态

支付宝推荐使用异步通知方式进行操作
同步通知如果浏览器崩溃或关闭就无法继续操作了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
*加粗样式

配置内网穿透地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置nginx
在这里插入图片描述

精确请求一般放在上边
在这里插入图片描述
在这里插入图片描述
这里报404 我们看一下访问日志
在这里插入图片描述
在这里插入图片描述
查看错误日志
在这里插入图片描述
找错了目录
在这里插入图片描述

在gulimail.conf里配置 添加我们的网址 使其的访问变成post请求 而不是静态网页
在这里插入图片描述

重启nginx
在这里插入图片描述
访问成功
在这里插入图片描述
在这里插入图片描述

这里直接放行此请求
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

验签 防止有人伪造 如拿postman自己发送一个数据给你

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里报错 是日期格式转换错误
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

收单

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里写我们需要的时间 我们这里测试用的是1分钟
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们也可以直接调用支付宝的异步收单功能
在这里插入图片描述

在这里插入图片描述

每晚可以调用对账功能来进行对账
在这里插入图片描述
这里可以查看订单号信息 每晚可以将当天的订单进行对账 来校验交易信息是否异常
在这里插入图片描述
这里还有退款功能
在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/16891.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI大模型日报#0527:豆包大模型披露评测成绩、天工AI日活超100万、AI初创集体跳槽OpenAI

导读:AI大模型日报,爬虫LLM自动生成,一文览尽每日AI大模型要点资讯!目前采用“文心一言”(ERNIE 4.0)、“零一万物”(Yi-Large)生成了今日要点以及每条资讯的摘要。欢迎阅读&#xf…

PyQt5-新手避坑指南(持续更新)

文章目录 一.前言二.开发环境三.坑1.程序没有详细报错就退出了2.qrc资源文件的使用3.QLabel文字自动换行4.图片自适应大小5.checkbox自定义样式后✓不见了6.多线程 四.记录 一.前言 本篇博客整理了一些初学者容易犯的…

技术贴 | Query 物理计划构建指南

在往期博客《执行器 - Query 执行详解》中,我们介绍到到一条 Query 的 SQL 语句需要经过:词法分析 —— 生成 AST 语法树 —— 生成物理计划。本期博客我们接续上篇讲解一条 Query 语句物理计划的具体结构,以及如何构建物理计划。 物理计划是…

Jmeter环境安装(超级简单)

Jmeter的安装是非常简单的,只需要将下载的安装包解压后,就可以运行了!! 一、首先要下载Jmeter 1.1、官网下载: 下载最新版:https://jmeter.apache.org/download_jmeter.cgi https://jmeter.apache.org/…

论文阅读》学习了解自己:一个粗略到精细的个性化对话生成的人物感知训练框架 AAAI 2023

《论文阅读》学习了解自己:一个粗略到精细的个性化对话生成的人物感知训练框架 AAAI 2023 前言 简介研究现状任务定义模型架构Learning to know myselfLearning to avoid Misidentification损失函数实验结果消融实验 前言 亲身阅读感受分享,细节画图解释…

代码随想录算法训练营第四十一天 | 理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯

理论基础 代码随想录 视频:从此再也不怕动态规划了,动态规划解题方法论大曝光 !| 理论基础 |力扣刷题总结| 动态规划入门_哔哩哔哩_bilibili 动归五部曲 1.dp数组以及下标的含义 2.递推公式 3.dp数组如何初始化 4.遍历顺序(例如先背包再…

一个程序员的牢狱生涯(40)好事

星期一 好 事 小X州脸上的掌印是谁留下的? 我想起我们排队去小卖铺的时候,号子里有几个人没有出去。头铺应该不会动手的,老汉整天闷着不说话,也不会是他,那就只剩下了大镣!不过小X州这小子也是该他挨打,刚惹了大镣不说,在大家都去小卖铺的时候他还没去,这不是自己上赶…

java_方法重写(覆盖)

介绍 现在我们来试一下 代码 父类 package b;public class father_ {//father class//4attributepublic void cry() {System.out.println("小动物叫唤");} } package b; 子类 public class graduate extends father_ {public void cry() {//子类方法//非私有的属性和…

数据访问层设计_4.灵活运用XML Schema

1.XML Schema XML Schema用来描述XML文档合法结构、内容和限制。XML Schema由XML1.0自描述,并且使用了命名空间,有丰富的内嵌数据类型及其强大的数据结构定义功能,充分地改造了并且极大地扩展了DTDs(传统描述XML文档结构和内容限…

算法训练营第四十一天 | LeetCode 509 斐波那契数列、LeetCode 70 爬楼梯、LeetCode 746 使用最小花费爬楼梯

LeetCode 509 斐波那契数列 这题动规五部曲都定义得比较明确。首先是dp数组下标,题目中给定F(0) 0说明从0开始,dp[i]直接表示F(i)的值即可。递推公式也直接给出了,也给了开头两个作为递推基础的数值作为初始化依据。遍历顺序也指明是从前往…

有哪些和excel类似或基于excel扩展的软件?

Workfine数字化管理平台是一款易上手、便捷、高效的数字化管理工具,是类excel设计,更容易上手进行企业业务系统的搭建,在信息记录和表格管理方面,比excel更简单易用,在这里,给大家挑几个点展示下~ 首先表格…

oracle碎片整理

1、move碎片整理 1) DECLARE tmp_val VARCHAR2 (500); BEGIN FOR REC IN (SELECT TABLE_NAME FROM USER_TABLES ) LOOP tmp_val:=ALTER TABLE || REC.TABLE_NAME || MOVE; BEGIN EXECUTE IMMEDIATE tmp_val; DBMS_OUTPUT.ENABLE(buffer_size => null); DBMS_OUTPUT.put_l…

一键恢复,U盘被删除文件方法分享

U盘是一种轻巧便携的移动储存工具,在日常的工作以及学习过程中,我们经常性会使用它来传输、备份、存储一些重要文件。然而,随着后期使用频率的增多,会在不同的设备上来回插拔,也就给里面存储文件带来了很大的隐患。比方…

I.MX6ULL的蜂鸣器实验-GPIO输出实验

系列文章目录 I.MX6ULL的蜂鸣器实验 I.MX6ULL的蜂鸣器实验 系列文章目录一、前言二、有源蜂鸣器简介三、硬件原理分析四、程序编写4.1程序编写前提工作4.2程序编写 五、编译下载验证5.1编写 Makefile 和链接脚本5.2编译下载 一、前言 在 I.MX6U-ALPHA 开发板上有一个有源蜂鸣器…

九宫格转圈圈抽奖活动,有加速,减速效果

在线访问demo和代码在底部 代码&#xff0c;复制就可以跑 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><tit…

SpringBootTest测试框架五

示例 package com.xxx;import com.xxx.ut.AbstractBasicTest; import com.xxx.ut.uttool.TestModel; import

Hive操作

–默认路径/user/hive/warehouse. 建数据库不可以指定路径 create database ods_housesys_db; 在ods_housesys_db中建表&#xff0c;指定表路径/user/hdpu/ods_housesys_db/ods_broker。 会自动创建ods_housesys_db/ods_broker两级路径。但是hdpu需要自己创建。 执行语句时要…

强化学习中model-free和model-based

强化学习中model-free和model-based 1.Model-Based 强化学习算法2.Model-Free 强化学习算法3.对比总结 在强化学习&#xff08;Reinforcement Learning, RL&#xff09;中&#xff0c;算法通常分为两大类&#xff1a;model-based 和 model-free。它们的主要区别在于是否显式地构…

Thingsboard规则链:GPS Geofencing Filter节点详解

​​​​​​​ 引言 GPS Geofencing Filter节点具体作用 使用教程 源码浅析 应用场景与案例 物流与运输 农业智能化 城市安全管理 结语 引言 在物联网技术迅速发展的今天&#xff0c;精准的位置服务已成为诸多应用不可或缺的一环。作为物联网平台的佼佼者&…

Python应用开发——30天学习Streamlit Python包进行APP的构建(2)

🗓️ 天 14 Streamlit 组件s Streamlit 组件s 是第三方的 Python 模块,对 Streamlit 进行拓展 [1]. 有哪些可用的 Streamlit 组件s? 好几十个精选 Streamlit 组件s 罗列在 Streamlit 的网站上 [2]. Fanilo(一位 Streamlit 创作者)在 wiki 帖子中组织了一个很棒的 St…