1 源码
Github个人主页:https://github.com/dianemax
后端源码:leyou
门户网站源码:leyou-portal
后台管理系统源码:leyou-manage-web
乐优商城最新数据库文件:sql.txt
2 笔记
2.1 项目概述
2.2 微服务
-
微服务一:注册微服务:LyRegister
- 使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;
- 服务间通过Ribbon和Feign实现均衡负载以及服务的消费;
- 为了使得服务集群更为健壮,使用Hystrix的融断机制来避免在微服务架构中个别服务出现异常时引起的故障蔓延;
-
微服务二:网关微服务:LyGateway
- 一切对服务的请求都会经过Zuul这个网关,然后再由网关来实现 鉴权、动态路由等等操作,Zuul作为服务的统一入口
-
微服务三:商品微服务(上):LyItemApplication、商品微服务(下):LyItemApplication
- 首先分析了商品表结构,最终基于商品类别去设计了表结构,每个分类下的商品规格参数key(参数)和值(参数的值)分开保存,key跟商品分类绑定,值跟商品绑定,解决全品类电商的spu和sku管理问题
- 实现了品牌的查询,返回结果是总条数、总页数、当前页商品信息,将上述信息封装成
PageResult
,因为其他微服务也将频繁返回这个分页结果,涉及到的操作有:分页、过滤、排序、查询,最终解析分页结果得到返回值 - 实现了品牌的新增,但是注意Mapper只能处理单表Brand,无法新增中间表
tb_category_brand
,因此要自己写sql语句 - 商品规则组与规格参数的查询
- 商品的查询
- 商品的新增,新增界面首先选择商品的分类,之后选定品牌,这时首先需要实现根据商品分类查询品牌的功能;描述商品信息使用富文本编辑器,我们采用的是一款支持Vue的富文本编辑器:
vue-quill-editor
;添加商品规格参数,首先要根据分类id查询规格参数,查询完成后填写参数,最后提交表单;提交表单即新增商品,同时要更新spu、spu_detail、sku、stock四张表的信息 - 修改商品信息,修改之前要先查找,除了查找spu信息还要查找sku信息;spu数据可以修改,但是SKU数据无法修改,因为有可能之前存在的SKU现在已经不存在了,或者以前的sku属性都不存在了。比如以前内存有4G,现在没了,