![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
谷粒商城笔记
文章平均质量分 87
谷粒商城笔记
xjhqre
这个作者很懒,什么都没留下…
展开
-
22.缓存-SpringCache
1 简介文档地址: https://docs.spring.io/spring-framework/docs/5.2.22.RELEASE/spring-framework-reference/integration.html#cacheSpring 从 3.1开始定义了org.springframework.cache.Cache 和org.springframework.cache.CacheManager接口来统一不同的缓存技术,并支持使用 JCache (JSR-107)注解简化我们开发;原创 2022-05-19 14:05:27 · 274 阅读 · 0 评论 -
21.缓存-分布式锁
1 基本原理2 实现方法2.1 实现代码修改后的三个方法:getCatalogJson@Overridepublic Map<String, List<Catelog2Vo>> getCatalogJson() { // 给缓存中放JSON字符串,拿出的JSON字符串,还需要逆转为能用的对象类型 String catalogJSON = stringRedisTemplate.opsForValue().get("catalogJSON");原创 2022-05-17 16:47:45 · 300 阅读 · 0 评论 -
20.缓存-缓存使用
1 缓存使用为了系统性能的提升,我们一般都会将部分数据放入缓存中,加速访间。而db承担数据落盘工作。哪些数据适合放入锾存?即时性、数据—致性要求不高的访问量大且更新频率不高的数据(读多,写少)举例:电商类应用,商品分类,商品列表等适合缓存并加一个失效时间(根据数据更新频率来定),后台如果发布一个商品,买家需要5分钟才能看到新的商品一般还是可以接受的。2 本地缓存与分布式缓存2.1 本地缓存2.2 分布式缓存-本地模式在分布式下的问题其中一个服务的缓存修改了,但是其他服务里的缓存没有原创 2022-05-12 18:28:55 · 389 阅读 · 0 评论 -
19.性能压测
1 压力测试1.1 基本介绍压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测都是为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数。使用压力测试,我们有希望找到很多种用其他测试方法更难发现的错误。有两种错误类型是:内存泄漏,并发与同步。有效的压力测试系统将应用以下这些关键条件:重复,并发,量级,随机变化。1.2 性能指标响应时间(Response Time: RT)响应时间指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,原创 2022-05-10 15:24:26 · 635 阅读 · 0 评论 -
18.商品业务-nginx
1 搭建域名访问1.1 修改hosts添加域名映射:192.168.56.10 gulimall.com注意关闭ip代理软件,否则修改hosts不生效,浏览器会优先考虑代理工具(如添加 pac 文件、SwitchySharp等)的代理,建议调试的时候先关闭这些代理。1.2 配置nginx1、进入linux目录/mydata/nginx/conf/conf.d2、复制一份default.conf,cp default.conf gulimall.conf3、修改gulimall.con原创 2022-05-05 15:12:41 · 1402 阅读 · 1 评论 -
17.商品业务-首页
1 整合thymeleaf1、product依赖thymeleaf<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>2、把文档里的index文件夹复制到product模块的static目录下,复制index.html原创 2022-05-05 14:07:04 · 715 阅读 · 0 评论 -
16.商品业务-商品上架
文章目录1 sku在es中的存储模型分析1.1 商品Mapping2 nested数据类型3 商品上架服务3.1 远程调用查询库存服务3.2 实现es存储业务3.2.1 远程调用接口3.3 商品上传业务逻辑3.4 测试1 sku在es中的存储模型分析商品上架上架的商品才可以在网站展示上架的商品需要可以被检索1.1 商品Mapping分析:商品上架在es 中是存sku还是spu?1)、检索的时候输入名字,是需要按照sku的title进行全文检索的2)、检索使用商品规格,规格是spu的公共属性,每原创 2022-05-04 15:30:25 · 1443 阅读 · 0 评论 -
15.全文检索-ElasticSearch
1 简介https://www.elastic.co/cn/what-is/elasticsearch全文搜索属于最常见的需求,开源的 Elasticsearch是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github都采用它Elastic 的底层是开源库Lucene。但是,你没法直接用Lucene,必须自己写代码去调用它的接口。Elastic是 Lucene的封装,提供了REST API的操作接口,开箱即用。REST API:天然的跨平原创 2022-05-03 12:09:06 · 2354 阅读 · 0 评论 -
14.商品服务-API-商品管理
文章目录1 SPU规格维护1.1 获取SPU规格1.2 修改商品规格1 SPU规格维护1.1 获取SPU规格请求路径(GET):/product/attr/base/listforspu/{spuId}响应数据:{ "msg": "success", "code": 0, "data": [{ "id": 43, "spuId": 11, "attrId": 7, "attrName": "入网型号", "attrValue": "LIO-AL00", "attrSo原创 2022-04-29 18:36:11 · 203 阅读 · 1 评论 -
13.仓储服务-API-仓库管理
文章目录1 添加进注册中心2 配置网关3 仓库模糊查询4 查询库存5 查询采购需求6 合并采购需求6.1 采购流程图6.2 创建采购单6.3 查询未领取的采购单6.4 合并采购需求7 领取采购单8 完成采购8.1 创建vo8.2 controller8.3 实现done方法8.4 实现addStock方法8.5 远程调用服务8.6 MyBatis配置8.7 测试1 添加进注册中心将ware模块添加进注册中心,配置application.ymlcloud: nacos: discovery:原创 2022-04-29 15:31:50 · 613 阅读 · 0 评论 -
12.商品服务-API-商品管理
文章目录1 SPU检索1.1 修改controller1.2 实现service1.3 修改前端页面1.4 查询测试2 SKU检索2.1 修改controller2.2 实现service2.3 查询测试1 SPU检索1.1 修改controller修改product模块下的SpuInfoController类中的list方法@RequestMapping("/list")// @RequiresPermissions("product:spuinfo:list")public R list(@原创 2022-04-28 18:39:56 · 394 阅读 · 0 评论 -
11.商品服务-API-新增商品
文章目录1 导入前端代码2 调试会员等级相关接口3 获取分类关联的品牌4 获取分组下所有的分组及属性5 商品新增&Vo抽取5.1 添加规格参数和销售属性5.2 发布商品基本信息5.3 设置基本参数5.4 设置销售属性5.5 设置SKU信息5.6 获取JSON数据5.7 生成java实体类6 商品新增业务流程分析6.1 修改实体类6.1.1 SpuSaveVo6.1.2 Bounds6.1.3 BaseAttrs6.1.4 Skus6.1.5 Attr6.1.6 MemberPrice6.1.7 Im原创 2022-04-28 14:54:29 · 681 阅读 · 0 评论 -
云服务器部署renren-fast
阿里云服务器部署renren-fast服务由于电脑内存快吃不消了,就把renren-fast部署到阿里云服务器上。注意:此方法只适用于nacos和mysql都在服务器上的情况,如果是本地的nacos和mysql的话,renren-fast项目会无法访问nacos和mysql步骤一:打包项目打包renren-fast项目,点击maven的clean和install然后在renren-fast项目的根目录下有一个target文件夹,把里面的renren-fast.jar传输到阿里云的服务器上任意一个文原创 2022-04-26 16:31:49 · 611 阅读 · 0 评论 -
10.商品服务-API-平台属性
文章目录1 属性分组模糊查询2 Object划分2.1 PO(Persistant Object) 持久对象2.2 DO(Domain Object) 领域对象2.3 TO(Transfer Object) 数据传输对象2.4 DTO(Data Transfer Object) 数据传输对象2.5 VO(value object) 值对象2.6 BO(Business Object) 业务对象2.7 POJO(Plain Ordinary Java Object) 简单无规则java对象2.8 DAO(Da原创 2022-04-26 15:30:27 · 147 阅读 · 0 评论 -
9.商品服务-API-品牌管理-分类关联与级联更新
文章目录1 导入sql2 配置分页插件3 实现品牌管理的模糊查询4 新增品牌数据5 关联分类5.1 导入前端代码5.2 获取品牌关联信息接口5.3 新增品牌关联信息接口5.4 前端页面关联测试5.5 修改更新方法5.5.1 同步修改品牌名5.5.2 同步修改类别名1 导入sql将文档里的pms_catelog.sql导入数据库pms_category,到前端页面的分类维护和匹配管理中查看2 配置分页插件在product模块里创建config.MyBatisConfig@Configuration原创 2022-04-25 00:38:22 · 253 阅读 · 0 评论 -
8.商品服务-API-属性分组
1 SPU与SKUSPU:Standard Product Unit(标准化产品单元)是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息的集合,该集合描述了一个产品的特性SKU:Stock Keeping Unit(库存量单位)即库存进出计量的基本单元,可以是以件、盒、托盘等为单位,SKU这是对于大型连锁超市DC(配送中心)物流管理的一个必要的方法。现在已经被引申为产品编号的简称,每种产品均对应有唯一的SKU号1.1 关联关系表1.2 SPU-SKU-属性表2 前端组件抽取2.1原创 2022-04-24 22:49:54 · 831 阅读 · 0 评论 -
7.商品服务-API-品牌管理
文章目录1 创建品牌管理菜单2 页面效果优化3 云存储3.1 开通阿里云oss3.2 上传文件方式3.2.1 普通上传方式3.2.2 服务端签名后上传3.3 原生SDK上传文件3.4 使用OSS-starter3.5 服务端签名3.5.1 创建微服务gulimall-third-party3.5.2 编写controller3.5.3 配置网关3.6 前后端联调测试4、表单校验4.1 表单页面修改4.2 表单校验4.3 后端JSR303校验5 统一异常处理5.1 系统错误码6 分组校验7、自定义校验注解7.原创 2022-04-24 14:19:05 · 578 阅读 · 0 评论 -
6.商品服务-API-三级分类
文章目录1 三级分类1.1 数据准备1.2 查询功能实现1.2.1 controller1.2.2 entity1.2.2 service1.2.3 测试1.3 配置网关路由与路径重写1.3.2 配置renren-fast1.4 跨域1.4.1 什么是跨域1.4.2 跨域流程1.4.3 解决跨域的方法1.4.4 网关配置跨域1.5 树形展示分类数据1.5.1 添加网关路由规则1.5.2 配置注册nacos1.5.3 前端页面1.5.4 测试1.6 删除分类实现1.6.1 前端页面1.6.2 测试删除逻辑1.原创 2022-04-22 21:45:23 · 1318 阅读 · 0 评论 -
5.前端基础-Vue
文章目录1 安装Vue2 vue声明式渲染3 双向绑定4 单击事件5 函数声明和调用6 安装插件7 vue指令7.1 插值表达式7.2 v-text、v-html7.3 v-bind7.4 v-model7.5 v-on7.5.1 事件修饰符7.5.2 按键修饰符7.5.3 按组合键7.6 v-for7.7 v-if、v-show7.8 v-else、v-else-if8 计算属性和监听器9 过滤器10 组件11 生命周期12 Vue模块化开发12.1 全局安装webpack12.2 全局安装vue脚手架1原创 2022-04-21 13:48:48 · 1051 阅读 · 0 评论 -
4.前端基础-ES6
1 let声明变量1、用vscode打开一个新的文件夹2、新建文件1、let.html3、输入快捷键 shift + ! 快速生成HTML模板4、let 变量和 var 变量的区别例1:<script> // var 声明的变量往往会越域 // let声明的变量有严格的作用域 { var a = 1; var b = 2; } console.log(a); // 1 console.log(b); //原创 2022-04-21 13:07:59 · 1313 阅读 · 0 评论 -
3.分布式组件篇
1 spring cloud alibaba1.1 简介spring cloud alibaba的github地址:https://github.com/alibaba/spring-cloud-alibaba1.2 引入依赖在common模块里引入依赖对应版本:1.5.x 版本适用于 Spring Boot 1.5.x2.0.x 版本适用于 Spring Boot 2.0.x2.1.x 版本适用于 Spring Boot 2.1.x2.2.x 版本适用于 Spring Boot 2.2原创 2022-04-19 20:52:24 · 435 阅读 · 0 评论 -
2.快速开发篇
2 快速开发2.1 导入前端脚手架2.1.1 安装node.js下载地址:https://registry.npmmirror.com/binary.html?path=node/v10.16.3/1、输入node.js查看node版本2、配置npm使用淘宝镜像:npm config set registry http://registry.npm.taobao.org/3、在vscode的终端中输入npm install,这步出错可以查看评论区相关解决方法,在这里卡了两小时4、在终端输入np原创 2022-04-19 14:20:42 · 1020 阅读 · 0 评论 -
1.环境篇
1 环境搭建1.1 安装docker卸载系统之前的dockersudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \原创 2022-04-19 13:02:25 · 1393 阅读 · 0 评论