学习笔录-SPRING BOOT

springboot支付项目之项目设计

从本篇起,我们将开始学习springboot微信支付项目。本节我们来讲解项目设计。主要从以下几个方面来讲解:1:角色划分;2:功能模块划分;3:部署架构;4:数据库设计;角色划分:买家端和卖家端买家是在手机端操作的,买家端是在PC端管理商品的功能模块划分如下:买家浏览商品列表、下单、查询、取消订单等操作卖家可以商品类目管理、商品管理、订单管理等操作。具体如下图:买家和卖家关系:买家:创建/查询订单

从本篇起,我们将开始学习spring boot 微信支付项目。

本节我们来讲解项目设计。主要从以下几个方面来讲解:

1:角色划分;

2:功能模块划分;

3:部署架构;

4:数据库设计;

角色划分:

买家端和卖家端

买家是在手机端操作的,买家端是在PC端管理商品的

功能模块划分如下:

买家浏览商品列表、下单、查询、取消订单等操作

卖家可以商品类目管理、商品管理、订单管理等操作。

具体如下图:

买家和卖家关系:

买家:创建/查询订单、查询商品

卖家:查询/接单、管理商品

卖家与买家之间通过消息进行连接

具体如下图:

再来看看项目部署:

买家通过手机端访问nginx上面页面,请求tomcat数据,然后从redis缓存或者mysql数据库中查询数据;

卖家通过PC端浏览器操作。

具体如下图:

数据库设计:

主要从:表之间关系、创建表sql脚本及注意事项三个方面来讲。

说明:我们主要讲解spring boot及支付相关的。其他业务都忽略,精简之后就剩下下面五张表,比较简单的。表与表之间的关系如下图:

商品表字段:

名称、价格、库存、描述、图片、类目编号等。

sql脚本:

类目表脚本:

订单表sql脚本:

商品详情

具体五张表sql脚本:

-- 类目

create table `product_category` (

`category_id` int not null auto_increment,

`category_name` varchar(64) not null comment '类目名字',

`category_type` int not null comment '类目编号',

`create_time` timestamp not null default current_timestamp comment '创建时间',

`update_time` timestamp not null default current_timestamp on update current_timestamp comment '修改时间',

primary key (`category_id`)

);

-- 商品

create table `product_info` (

`product_id` varchar(32) not null,

`product_name` varch

原创不易,完成人机校验,阅读全文

相关推荐