第1章 框架搭建
1. 走进电商
1.1 电商行业分析
近年来,世界经济正向数字化转型,大力发展数字经济成为全球共识。党的十九大报告明确提出要建设“数字中国”“网络强国”,我国数字经济发展进入新阶段,市场规模位居全球第二,数字经济与实体经济深度融合,有力促进了供给侧结构性改革。电子商务是数字经济的重要组成部分,是数字经济最活跃、最集中的表现形式之一。2017年,在政府和市场共同推动下,我国电子商务发展更加注重效率、质量和创新,取得了一系列新的进展,在壮大数字经济、共建“一带一路”、助力乡村振兴、带动创新创业、促进经济转型升级等诸多方面发挥了重要作用,成为我国经济增长的新动力。
2017年,我国电子商务交易规模继续扩大,并保持高速增长态势。国家统计局数据显示,2017年全国电子商务交易额达29.16万亿元,同比增长11.7%;网上零售额7.18万亿元,同比增长32.2%。我国电子商务优势进一步扩大,网络零售规模全球最大、产业创新活力世界领先。数据显示,截止2017年底,全国网络购物用户规模达5.33亿,同比增长14.3%;非银行支付机构发生网络支付金额达143.26万亿元,同比增长44.32%;全国快递服务企业业务量累计完成400.6亿件,同比增长28%;电子商务直接从业人员和间接带动就业达4250万人。
2018天猫全天成交额记录
1.2 电商系统技术特点
-
技术新
-
技术范围广
-
分布式
-
高并发、集群、负载均衡、高可用
-
海量数据
-
业务复杂
-
系统安全
1.3 主要电商模式
B2B
B2B 即Business to Business,是指进行电子商务交易的供需双方都是商家(或企业、公司),她(他)们使用了互联网的技术或各种商务网络平台,完成商务交易的过程。电子商务是现代 B2B marketing的一种具体主要的表现形式。
案例:阿里巴巴、慧聪网
C2C
C2C即 Customer(Consumer) to Customer(Consumer),意思就是消费者个人间的电子商务行为。比如一个消费者有一台电脑,通过网络进行交易,把它出售给另外一个消费者,此种交易类型就称为C2C电子商务。
案例:淘宝、易趣、瓜子二手车
B2C
B2C是Business-to-Customer的缩写,而其中文简称为“商对客”。“商对客”是电子商务的一种模式,也就是通常说的直接面向消费者销售产品和服务商业零售模式。这种形式的电子商务一般以网络零售业为主,主要借助于互联网开展在线销售活动。B2C即企业通过互联网为消费者提供一个新型的购物环境——网上商店,消费者通过网络在网上购物、网上支付等消费行为。
案例:唯品会、乐蜂网
C2B
C2B(Consumer to Business,即消费者到企业),是互联网经济时代新的商业模式。这一模式改变了原有生产者(企业和机构)和消费者的关系,是一种消费者贡献价值(Create Value), 企业和机构消费价值(Consume Value)。
C2B模式和我们熟知的供需模式(DSM, Demand SupplyModel)恰恰相反,真正的C2B 应该先有消费者需求产生而后有企业生产,即先有消费者提出需求,后有生产企业按需求组织生产。通常情况为消费者根据自身需求定制产品和价格,或主动参与产品设计、生产和定价,产品、价格等彰显消费者的个性化需求,生产企业进行定制化生产。
案例:海尔商城、 尚品宅配
O2O
O2O即Online To Offline(在线离线/线上到线下),是指将线下的商务机会与互联网结合,让互联网成为线下交易的平台,这个概念最早来源于美国。O2O的概念非常广泛,既可涉及到线上,又可涉及到线下,可以通称为O2O。主流商业管理课程均对O2O这种新型的商业模式有所介绍及关注。
案例:美团、饿了吗
F2C
F2C指的是Factory to customer,即从厂商到消费者的电子商务模式。F2C是一种商业模式。F2C模式是品牌公司把设计好的产品交由工厂代工后通过终端送达消费者,确保产品合理,同时质量服务都有保证。它们为消费者提供了性价比的产品。
B2B2C
B2B2C是一种电子商务类型的网络购物商业模式,B是BUSINESS的简称,C是CUSTOMER的简称,第一个B指的是商品或服务的供应商,第二个B指的是从事电子商务的企业,C则是表示消费者。
案例:京东商城、天猫商城
2. 畅购-需求分析与系统设计
2.1 需求分析
网站前台静态原型演示
网站管理后台静态原型演示
2.2 系统设计
畅购商城属于B2C电商模式,运营商将自己的产品发布到网站上,会员注册后,在网站上将商品添加到购物车,并且下单,完成线上支付,用户还可以参与秒杀抢购。
2.2.1 前后端分离
以前的JavaWeb项目大多数都是java程序员又当爹又当妈,又搞前端,又搞后端。随着时代的发展,渐渐的许多大中小公司开始把前后端的界限分的越来越明确,前端工程师只管前端的事情,后端工程师只管后端的事情。正所谓术业有专攻,一个人如果什么都会,那么他毕竟什么都不精。
PS: 虽然前后分离减轻了后台的工作压力,加快了开发速度。但是在前后端对接的时候会产生更多的问题,所以前后分离不一定十分优秀。
对于后端java工程师:
把精力放在设计模式、Spring、Linux、MySQL事务隔离与锁机制、mongodb、http/tcp、多线程、分布式架构、弹性计算架构、微服务架构、java性能优化以及相关的项目管理等方面。
对于前端工程师:
把精力放在H5、css、vue、webpack、nodejs、Google V8引擎、javascript多线程、模块化、面向切面编程、设计模式、浏览器兼容性、性能优化等等。
2.2.2 技术架构
2.2.3 系统架构图
3 畅购-框架搭建
3.1 环境准备
(1)IDEA(eclipse)、DataGrip(Navicat)、阿里云数据库(Linux系统虚拟机)
(2)JDK8+
(3)MySQL5.7+
(4)Redis、Maven、ES等
(5)数据库脚本
3.2 项目结构说明
项目架构如图所示:
结构说明:
- thankson-springcloud-auth:权限模块,主要负责各个项目的权限控制
- thankson-springcloud-common:公共模块,包括了工具类、数据库和一些用到组件配置
- thankson-springcloud-eureka: 注册中心,负责记录服务和服务地址的映射关系
- thankson-springcloud-gateway:网关模块,负责客户端访问的转发,同时亦可处理鉴权与限流
- thankson-springcloud-model:服务模块,负责提供微服务的支持
3.3 父模块搭建
1、使用IDEA,点击File —> New —> Project ,选择Maven创建项目
2、输入项目的groupId、artifactId、version等信息,点击Finish创建
3.4 其他模块搭建
1、右键单击项目 New —> Module,选择Maven创建
2、父工程选择changgou,点击Finish
4、同理创建出thankson-springcloud-auth
、thankson-springcloud-common
、thankson-springcloud-gateway
、thankson-springcloud-model
等模块,并删除src目录。创建后工程目录如下
4. 结束语
至此,畅购商城后台项目的骨架以基本完成。项目地址如下