从零开始自搭SpringBoot项目 -- Qingluopay项目工程介绍

ops/2025/1/8 20:37:38/

从零开始自搭项目 – QingLuoPay

一,为什么要从零开始自搭项目

首先在介绍这个项目之前先介绍一下我为什么要选择从零自搭项目,而不是跟着网上哪些视频等做项目。

之前的很长一段时间我也都是在网上找一些做项目的视频就包含黑马的(神领物流,今日指数等),在次之后也去牛客啊这些网站去看看其他优秀的人简历是怎么写的。无一例外,采用了是没什么技术解决了什么什么问题,当然我的简历也是。不能一板子打死的说这种简历有问题,其技术方面是很突出的,或者说就是一味的去堆技术栈,而对业务方面重视不够。当所有人的简历都是这个样子,那么HR挑人的评判标准就不是你的项目,你的技能了(当一千份简历当中有800份都是相似的,那么HR为什么要选择面试你?当然要么就是你的学历,竞赛等其他因素足够高),因此我决定开始自己从零自搭项目,从业务需求入手,对我的简历进行重构。

接下来就介绍一下我经过选型之后所选择的项目 – QingLuopay,直白点说就是一个支付项目。该项目主要由运营平台服务端,商户系统服务端组成,通过抽取微信/支付宝等支付接口,实现支付功能的轻量化对接,用户只需通过在平台注册相关信息就可轻松实现支付。

在该项目当中我也参考了一些优秀的开源项目如

项目名称地址
神领物流(支付模块)https://www.yuque.com/ares666/iie8vg?pwd=guek
Jeepayhttps://gitee.com/jeequan/jeepay
闪聚支付https://www.bilibili.com/video/BV17v411V79c

项目git地址:https://gitee.com/jixuonline/qing-luo-pay.git
该项目会持续更新,欢迎大家评论区指导留言。

二,项目结构

├── qingluopay-authentication – 鉴权
├── qingluopay-codegen – 保存实体类对象
├── qingluopay-core – 核心依赖包
├── qingluopay-manage – 运营平台服务端[11210]
├── qingluopay-merchant – 商户系统服务端[11211]
└── qingluopay-payment – 支付业务实现

在这里插入图片描述

三,技术架构

软件名称描述版本
JdkJava环境1.8
Spring Boot开发框架2.5.3
Redis分布式缓存3.2.10
MySQL数据库5.6.X
RabbitMQ消息中间件3.8
Sa-Token鉴权1.39.0
Mybatis-PlusMyBatis增强工具3.4.2
apifox接口管理2.6.41
HutoolJava工具类库5.6.6

四,工程结构

├── Service层 – 相对具体的业务逻辑服务层
├── Controller层 – 处理用户请求、调用业务逻辑并返回响应
├── Mapper层 – 用于映射SQL语句与Java对象的桥梁,负责数据库的增删改查操作。
├── DTO – 数据传输对象,与前端打交道,传给前端
├── Entity – 与数据库表结构一一对应的实体类
└── VO – 处理前端传入后端的对象

目前我对项目的整个框架设计如上所示,这是我目前可以想到的结构框架了,后续如果还有需求的增加会动态进行修改


http://www.ppmy.cn/ops/148554.html

相关文章

Cursor实现go项目配置并实现仓库Gin项目运行

✅作者简介:大家好,我是 Meteors., 向往着更加简洁高效的代码写法与编程方式,持续分享Java技术内容。 🍎个人主页:Meteors.的博客 💞当前专栏:知识备份 ✨特色专栏:知识分享 &#x…

window11 wsl mysql8 错误分析:1698 - Access denied for user ‘root‘@‘kong.mshome.net‘

🚨 错误分析:1698 - Access denied for user rootkong.mshome.net 这个错误是因为 MySQL 的 root 用户 使用 auth_socket 插件进行身份验证,而不是使用密码。因此,当你尝试从 远程主机 连接时,MySQL 会拒绝访问。 ✅ …

Transformer 和 Attention机制入门

1. 什么是 Transformer 背景: 在自然语言处理领域,早期常使用循环神经网络(RNN)及其变体(如 LSTM、GRU)来处理序列数据,如机器翻译、文本生成等任务。然而,RNN 结构存在以下问题&…

C# 中的命名空间与Java和Python中的导入

在 C#、Java 和 Python 这三种语言中,命名空间和导入机制都是用来组织和管理代码及其依赖的工具,但它们在具体实现和使用方式上存在一些差异。 1、问题背景 在 Java 和 Python 世界中,我们可以通过查看源文件来了解所有导入的来源&#xff0…

CSS进阶和SASS

目录 一、CSS进阶 1.1、CSS变量 1.2、CSS属性值的计算过程 1.3、做杯咖啡 1.4、下划线动画 1.5、CSS中的混合模式(Blending) 二、SASS 2.1、Sass的颜色函数 2.2、Sass的扩展(extend)和占位符(%)、混合(Mixin) 2.3、Sass的数学函数 2.4、Sass的模块化开发 2.5、Sass…

解决报错net.sf.jsqlparser.statement.select.SelectBody

在我们项目集成mybatis-plus时,总会遇到奇奇怪怪的报错,比如说下面的这个报错 而这个报错,是告诉我们的分页依赖冲突,要加个jsqlparser依赖来解决这个冲突,也相当于平衡,但是可能因为我们版本的不匹配,还是会报错,例如下面这样 但是我们是不知道到底是什么依赖冲突的,这个时候就…

《前端web开发-CSS3基础-1》

文章目录 《前端web开发-CSS3基础》1.CSS引入方式2.选择器-标签和类3.选择器-id和通配符选择器4.画盒子5.字体修饰属性6.字体大小、粗细和倾斜6.1字体大小6.2 字体粗细6.3字体倾斜 7.行高8.字体族9.font复合属性10.缩进、对齐和修饰线10.1 文本缩进10.2 文本和图片对齐10.3 文本…

蓝桥杯算法|练习记录

位运算 按位与运算符(&) 运算规则:两位同时为1,结果才为1,否则结果为0。例如, -3(在计算机中表示为1101)&5(0101) 0101(即十进制的1&…