JavaWeb - 仿小米商城 (1) : 项目启动
1.案例引述
网上商城介绍
网上商城类似于现实生活中的商店,利用电子商务的各种手段,达成买到卖的物品的过程的虚拟商店. 从而减少中时间环节,消除运输成本和代理中间的差价,造就对普通消费和加大市场带来巨大的发展空间,尽可能的还消费者的利益.
商城类别
英文类别 | 介绍 | 典型代表 |
---|---|---|
B2B | Business To Business商家对商家 | 阿里巴巴 |
B2C | Business To Customer商家爱对顾客销售 | 京东商城 |
C2C | Customer To Customer 客户对客户 | 百度有啊 |
O2O | Online TO Online线上线下相结合 | 象屿商城 |
商城常见模块
后台常见功能模块
。商品管理:包括后台商品库存管理、上货、出货、编辑管理和商品分类管理、商品品牌管理等。。订单管理:在线订单程序,使消费者能够顺利的通过WEB在线的方式,直接生成购买订单。
。商品促销:一般的购物系统多有商品促销功能,通过商品促销功能,能够迅速的促进商城的消费积极性。
。支付方式:即通过网上钱包、电子支付卡。进行网上资金流转换的业务流程;国内主流支付方式包括:支付宝、财富通、网银在线等。还有部分网上商城支持货到付款,如京东商城、第九大道、鹏程万里贸易商城。
。配送方式:购物系统集成的物流配送方式,从而方便消费者对物流方式进行在线选择。如:EMS、顺丰等等。。会员模块:在购物系统中,集成会员注册是吸引会员进行二次购买和提升转换率的方式。
前端界面功能模块
.模板风格自定义:即通过系统内置的模板引擎,可以方便的通过后台可视化编辑,设计出符合自身需求的风格界面。
。商品多图展示:随着电子商务的发展商品图片成为吸引消资首的弟一妥系,多图展小即据从EI/cy,m消费者的购物欲望。
。自定义广告模块:内置在系统中的广告模块,网站管理员能够顺利的通过操作就可以在前端界面中添加各种广告图片。
。商品展示:通过前端界面,以标准的或者其他个性化的方式向用户展示商品各类信息,完成购物系统内信息流的传递。
。购物车:用户可对想要购买的商品进行网上订购,在购物过程中,随时增删商品。
2. 小米商城项目介绍
开发环境
分类 | 名称 | 语种 |
---|---|---|
操作系统 | 开发在Windows10, 上线在Linux CentOs7.0 | 简体中文 |
数据库平台 | MySQL5.7+ | – |
应用服务器 | Tomcat8+ | |
Java开发工具 | idea2020+ | |
框架 | JavaEE5+ | |
项目名称 | 小米商城 mi_shop |
主要功能
序号 | 模块 | 主要功能 |
---|---|---|
1 | 商品显示模块 | 分页显示所有商品查看单个商品详细信息搜索商品 |
2 | 用户模块 | 新用户注册用户登录退出 |
3 | 购物车模块 | 加入商品到购物车修改所购商品数量 |
4 | 订单模块 | 提交订单并显示订单信息用户确认后生成订单用户查看历史订单 |
5 | 支付莫夸 | 完成在线支付功能 |
6 | 收获地址 | 管理收获地址 |
7 | 后台模块 | 主要实现商品的增删改查 |
数据库表设计说明
用户模块涉及的表
用户模块主要涉及到用户登录和注册功能以及地址选择功能
所以用户涉及模块涉及两张用户表和
**用户表:tb_user
**
存储用户信息标红会员和管理员
字段 | 类型 | 主键 | 约束 | 备注 |
---|---|---|---|---|
id |
int() | 是 | 自增 | 主键 |
username |
varchar(20) | not null | 用户昵称 | |
password |
varchar(32) | not null | 密码使用md5加密 | |
email |
varchar(50) | not null | 邮箱 | |
gender |
varchar(50) | 性别 | ||
flag |
int | 默认值0 | 状态标识:0未激活,1激活,2无效 | |
role |
int | 角色:0管理员 , 1 会员 | ||
code |
varchar(100) | 激活码 |
`tb_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(20) NOT NULL,
`password` varchar(32) NOT NULL,
`email` varchar(50) NOT NULL,
`gender` varchar(50) NOT NULL,
`flag` int(11) DEFAULT NULL,
`role` int(11) DEFAULT NULL,
`code` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
业务分析:
1.注册后的用户必须激活后才能登录
2.注册后生成一个激活连接给用户进行激活操作
收货地址表:tb_address
存储用户的收获地址
字段 | 类型 | 主键 | 约束 | 备注 |
---|---|---|---|---|
id |
int() | 是 | 自增 | 主键 |
detail |
varchar(200) | not null | 详细地址 | |
name |
varchar(20) | not null | 收件人姓名 | |
phone |
varchar(11) | not null | 手机号 | |
uid |
int | 外键 | 用户表id | |
level |
int | 地址顺序1是最高 | ||
`tb_address` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`detail` varchar(200) DEFAULT NULL,
`name` varchar(20) DEFAULT NULL,
`phone` varchar(20) DEFAULT NULL,
`uid` int(11) NOT NULL,
`level` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `fk_address_id` (`uid`),
CONSTRAINT `fk_address_id`