

配置刷新的注解








数据表中不存在的数据






gateway路径重写


CORS跨域










调整路由顺序:




TODO是什么:备忘录
逻辑删除





axios有请求缓存:



请求的模版!

删除成功后,重新获取数据!

删除成功之后,还有提示消息
删除成功以后还要展开父节点


新增的对话框:

在表单中,嵌套form表单

添加效果,添加之后,


保存成功:后端联调

保存成功后,关闭对话框!

设置需要默认展开的菜单:

复用对话框


alt + shift + f:VSCode的快捷键!

实现拖拽:
前端的,
递归找到当前子节点的最大的深度!
实现拖拽,怎么
批量删除:
前端两小时,后台5分钟!
后端可能要顺手做个后台管理系统,面向管理的!前端做的前端是面向公众的!
逆向生成工程是可以生成前端的CRUD的!
在数据库中,只是保存图片的url地址
解构!




好像和MinIO有关!

文件上传的实现:(也要解决跨域的问题)

前端表单校验:

表单校验:会用到正则表达式!
服务器也要进行表单校验!比如,用postMan提交表单数据,这样就不安全了!


启动校验注解的注解


全局异常处理,不用BindingResult了,这样的话,controller层的代码就更简洁了


返回的是JSON格式的数据类型,也可以返回ModelAndView

![]()
当异常非常多的时候,异常的状态码就非常的有用了

用枚举来封装业务状态码!
以上是统一异常处理
分组异常处理:
分组校验
更新和插入的校验可能不一样


Validated是spring提供的注解,分组之后,你就要制定每个注解的组了,不然的话,不会起作用的!


自定义校验注解没看懂!






前端组件抽取,父子组件的交互!

怎么会有那么多的陌生的方法!
获取分类属性分组!

什么是级联选择器?

分页插件,估计是和前端的分页是有关系的

多对多,关联分类
大表查询,从不做关联查询
关联关系,真的很好使
关联分类
同步更新,关联表中的品牌信息!
关联表的,
这可能在电商的项目中还是比较常用的!


View Object


告诉Mybatis这个属性不属于表里面的属性!
这样写是不规范的!


出现笛卡尔积,是联表查询可能出现的问题!
笛卡尔积:
新增商品的保存,怎么这么离谱呀!
调用远程服务
对照接口文档,实现的接口!
微服务,可以并行开发!
注册中心,服务的注册与发现
配置中心:配置中心,
Gateway网关,解决跨域的问题!

逆向工程,主要解决CRUD的问题!我们要解决的是高并发的问题!
SpringCloud
ElasticSearch怎么会有乐观锁的修改呢!?
性能压测
缓存
先是操作mysql,然后引入redis操作数据
将数据导入到redis之后,就会直接从redis中查询数据
分布式锁
SpringCache是干嘛的
CSS和HTML以及JavaScript我看是逃不掉了!
nginx
thymeleaf估计也是逃不掉了,再过几天,可能就不能来图书馆了!
商城业务的检索才是最恶心的!
主要是,前端的代码我还不是很清楚!
检索服务
商品详情
认证服务----异常机制,密码的加密存储,
可逆的加密
不可逆的加密(密码!!!,即使知道密码的加密算法,也不能得到密码 )
盐值,什么东西呀 !
登录怎么这么费劲呢?
从定向:可能会防止,表单的重复提交
分布式下的session问题!
我要怎么做呀 !令牌机制
真的好无语呀!?
使用code换取token只能使用一次!
accessToken一段时间内是不变的!
处理社交登录请求!
社交登录第一次也要自动注册!
过期时间!

视图映射
我还能说些什么呢?
JSON还能转成对象!
分布式session共享的问题!




SpringSession
装饰者模式
单点登录:
购物车功能!

我还能说点啥呢!
怎么会有拦截器呢!
过滤器是个鸡毛呀!
RabbitMQ消息队列!
订单服务是比较复杂的!
类似的!
还是和12306的买票比较像的
拦截器,登录检测
相比于改变世界,

订单服务是会用到多线程的!
库存查询、运费

改域名
提交订单、接口幂等性(提交一次和提交100次是一样的)
锁定库存
、、

多次按钮点击!
令牌机制
TODO
锁定库存
令牌校验
秒杀服务
本地在分布式的问题!分布式事务!


分布式事务,这玩意怎么这么复杂!


分布式事务的解决方案
订单服务的定时任务:
消息队列


延时队列
死信队列


rabbitMQ定时任务,
消息队列真的很好使呀!
延时队列
消息丢失




支付宝沙箱!
内网穿透


![]()
内网穿透,什么是内网穿透呀!
怎么一直再将RabbitMQ呀!
收单
什么是收单呀!


秒杀,单杀是吧!
秒杀商品,高并发是吧!
秒杀是吧!
真的服了!
我是真的服了!
哎呀,到底该怎么办呢!?
到底该怎么办呢!?
定时任务
我喜欢定时任务



RSemaphore是什么类呀
这就秒杀成功了是吗?
我还是没有看懂呀!
SpringCache缓存
王兴长得就很一般呀!主要还是家里很有钱!
成熟之爱,爱与被爱,都应该被感恩!
汗水是滋润灵魂的甘露双手是理想飞翔的翅膀
powerDesigner是什么呀?
数据库的设计有个最大的特点就是,没有建立外键,所有的表之间关系再复杂,也没有建立外键!在电商系统里面,数据量超大,做外键关联的话,非常耗费数据库的性能的操作!每张表都有几十万几百万的数据,每插入删除一条数据,数据库都要对外键进行检查,来保证数据的一致性和完整性。




雷丰阳老师的逆向工程还可以生成前端的vue代码!
shift+F6重命名modle的名称


远程调用微服务,微服务和分布式的区别!
后台管理系统!
sentinel流量控制、限流!
链路追踪技术!





逆向工程搭建
mybatis-plus
git和版本控制!
Spring Data、Spring Security
分布式和微服务真的是一座大山!
熟悉Java虚拟机原理、JVM分布式系统、Redis、MySQL、Spring、JavaScript、Dubbo 和RPC有关!
SpringMVC、zookeeper、mybatis、python、springcloud、linux、rabbitmq、操作系统、编译原理、计算机网络、服务器开发、tcp/ip协议:
(四)TCP/IP协议的链路层
链路层有时也称作数据链路层或网络接口层,用来处理连接网络的硬件部分。该层即包括操作系统硬件的设备驱动、NIC(网卡)、光纤等物理可见部分,还包括连接器等一切传输媒介。
(三)TCP/IP协议的网络层
TCP/IP协议网络层的作用是在复杂的网络环境中为要发送的数据找到一个合适的路径进行传输。简单来说,网络层负责将数据传输到目标地址,目标地址可以是多个网络通过路由器连接而成的某一个地址。另外,网络层负责寻找合适的路径到达对方的计算机,并将数据帧传送给对方,网络层还可以实现拥塞控制、网际互联等功能。网络层协议的代表包括:ICMP、IP等。
(二)TCP/IP协议的传输层
传输层的协议,解决了诸如端到端可靠性问题,能确保数据可靠的到达目的地,甚至能保证数据按照正确的顺序到达目的地。传输层的主要功能大致如下:
(1)为端到端连接提供传输服务;
(2)这种传输服务分为可靠和不可靠的,其中TCP是典型的可靠传输,而UDP是不可靠传输;
TCP协议是一个面向连接的、可靠的传输协议,它提供一种可靠的字节流,能保证数据完整、无损并且按顺序到达。TCP尽量连续不断地测试网络的负载并且控制发送数据的速度以避免网络过载。另外,TCP试图将数据按规定的顺序发送。
UDP协议是一个无连接的数据报协议,是一个“尽力传递”和“不可靠”协议,不会对数据包是否已经到达目的地进行检查,并且不保证数据包按顺序到达。
(一)TCP/IP协议的应用层
应用层包括所有和应用程序协调工作,并利用基础网络交换应用程序的业务数据的协议。一些特定的程序被认为运行在这个层上,该层协议所提供的服务能直接支持用户应用。应用层协议包括HTTP(万维网服务)、FTP(文件传输)、SMTP(电子邮件)、SSH(安全远程登录)、DNS(域名解析)以及许多其他协议。
elasticsearch:
mongoDB : 非关系型数据库。
存储文档(BSON)的关系型数据库。
用集合代替了表。
登录、鉴权、认证、AOP、Redis的使用
日志
表单重复提交:幂等性问题(多次调用方法或者接口不会改变业务状态,可以保证重复调用的结果和单次调用的结果一致。)
防止xss攻击(跨站脚本攻击,是最常见的web应用程序安全漏洞之一。在绝大多数网络攻击中都是把XSS作为漏洞链中的第一环,通过XSS,可以拿到用户浏览器的cookie,从而盗取用户的账号密码,进行非授权获取关键的隐私信息。)
项目的核心的复杂的业务???



















