一步步搭建网络商城开发框架
一、系统规划
1.1.系统范围定义
网络商城是一个基于web的多用户电子商务系统,主要实现了商品管理、订单管理、客户管理及营销管理等功能,可支持多人同时在线浏览商品,可以便捷的查询商品信息,可以实现在线购物及支付,可以支持客户信息管理,销售分析和营销活动等功能,为客户提供便捷的购物体验。
1.2.系统功能分析
商品管理:实现商品的添加,修改,删除,上架,下架,价格等操作;
订单管理:实现订单的管理,订单的添加,修改,删除,以及订单的查询,订单状态管理;
客户管理:实现用户的注册,登录,找回密码,积分管理,会员管理;
营销管理:实现优惠券,促销活动,折扣和促销等管理操作;
支付结算:实现在线支付,账户管理,订单结算等功能;
数据分析:实现网络商城的数据统计,分析和营销活动的统计;
客户服务:实现客服系统,实时聊天,解答客服等功能;
安全管理:实现系统安全管理,实时监控,安全防护等功能。
二、技术选型
2.1.技术选型
(1)web服务器:Nginx+Tomcat;
(2)数据库:MySQL;
(3)框架:Spring+SpringMVC+MyBatis;
(4)缓存:Redis;
(5)消息队列:RabbitMQ;
(6)其他:JavaMail、Solr等。
2.2.数据库设计
针对网络商城的数据库设计,主要包括以下几个方面:
(1)商品表:存储商品的基本信息,如商品名称、商品类别、商品价格、商品图片等;
(2)用户表:存储用户的基本信息,如用户名、密码、头像、积分等;
(3)订单表:存储订单的基本信息,如订单号、用户ID、商品ID、订单状态等;
(4)地址表:存储用户收货地址相关信息,如收货人姓名、地址、联系方式等;
(5)优惠券表:存储优惠券相关信息,如优惠券类型、优惠券价格、发放时间等;
(6)购物车表:存储用户购物车中的商品信息,如商品ID、数量、价格等。
三、架构设计
网络商城的架构设计,主要包括前端展示层、业务处理层、数据访问层和缓存层,可以采用MVC结构进行设计,如下图所示:
![MVC架构设计](https://images-1256386680.cos.ap-shanghai.myqcloud.com/web/20200314191430.png)
图:MVC架构设计
前端展示层:前端展示层主要负责页面的显示,数据的展示,用户的交互等功能;
业务处理层:业务处理层主要负责解析前端发送的请求,根