目录
1.前言
电商是当今最火爆的一种商业模式,学习springMVC等网页后端技术的我们,都很难找得到相关的实例,而往往很多公司在招聘的时候都会或多或少地要求有电商平台开发的相关经验。而笔者的一个朋友分享了一个电商平台的前端代码,但是后端代码是没有的,笔者找到了一小部分,但是是无法支撑整个电商平台的运行,于是,笔者只能自己分析前端的代码再去推敲出后端的逻辑,也许你能在网上找到有相似的网站,但是内部逻辑也许是不尽相同的。
接下来我们上几张效果图大家看看,如果有兴趣再往下读。
项目的展示地址:http://www.grammaker.cn:8080/dist/view/user-login.html
项目源码地址在文末
2.正文
程序框架
用户浏览商品——加入到购物车——生成订单——支付——发货——完成
数据库
talk is cheap ,show me the code。数据库是一切系统的基础,程序是数据结构+算法。而我觉得,数据结构的基础就是数据库的设计。
首先,作为一个电商系统,我们需要的是用户,那么我们就首先需要一个用户表
DROP TABLE IF EXISTS `mmall_user`;
CREATE TABLE `mmall_user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户表id',
`username` varchar(50) NOT NULL COMMENT '用户名',
`password` varchar(50) NOT NULL COMMENT '用户密码,MD5加密',
`email` varchar(50) DEFAULT NULL,
`phone` varchar(20) DEFAULT NULL,
`question` varchar(100) DEFAULT NULL COMMENT '找回密码问题',
`answer` varchar(100) DEFAULT NULL COMMENT '找回密码答案',
`role` int(4) NOT NULL COMMENT '角色0-管理员,1-普通用户',
`wechat_openid` varchar(255) DEFAULT NULL, 微信的openid
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_time` datetime NOT NULL COMMENT '最后一次更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `user_name_unique` (`username`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8;
接下来作为一个电商平台我们当然是以产品为主
DROP TABLE IF EXISTS `mmall_product`;
CREATE TABLE `mmall_product` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品id',
`cate