课程试听
阶段一 JavaSE基础
展开第一章 Java基础语法

1-1 Java入门

- 01、Java课程简介 免费试学
- 02、Java语言概述 免费试学
- 03、Java环境搭建:JDK安装、常用命令 免费试学
- 04、Java入门程序开发 免费试学
- 05、Java入门程序:常见问题解答 免费试学
1-2 开发工具

- 06、补充知识:Java执行原理、bug介绍 免费试学
- 07、补充知识:JDK组成、跨平台原理 免费试学
- 08、补充知识:JDK安装后Path和JAVA_HOME环境变量 免费试学
- 09、idea开发工具介绍 免费试学
- 10、idea开发第一个程序 免费试学
- 11、idea的配置、快捷键 免费试学
1-3 基础语法

- 12、基础语法:注释 免费试学
- 13、基础语法:字面量 免费试学
- 14、基础语法:认识变量 免费试学
- 15、基础语法:变量的应用场景 免费试学
- 16、基础语法:变量使用时的注意事项 免费试学
- 17、基础语法:关键字、标识符 免费试学
1-4 类型转换

- 01、基础语法:变量原理、ASCII、二进制
- 02、二进制转十进制、八进制、十六进制、数据单位
- 03、数据类型详解
- 04、自动类型转换
- 05、表达式的自动类型转换
- 06、强制类型转换
1-5 运算符

- 07、算术运算符、+符号做连接符
- 08、自增、自减运算符
- 09、赋值运算符
- 10、关系运算符
- 11、逻辑运算符
- 12、三元运算符、运算符优先级
- 13、API介绍、Scanner:录入用户键盘输入的数据
1-6 分支结构&循环控制

- 01、程序流程控制控制介绍
- 02、分支结构:if
- 03、分支结构:switch
- 04、分支结构:switch的注意事项、穿透性
- 05、循环结构:for循环概述
- 06、循环结构:for循环案例1:求和
- 07、循环结构:for循环案例2:求奇数和
1-7 循环控制&随机数

- 08、循环结构:while循环
- 09、循环结构:while循环案例
- 10、循环结构:do-while循环
- 11、循环的形式:死循环概述
- 12、循环的形式:循环嵌套
- 13、跳转关键字:break、continue
- 14、Random:生成随机数
- 15、Random的案例:猜数字游戏
1-8 数组基础

- 01、数组概述
- 02、数组的定义方式一:静态初始化数组
- 03、数组的访问
- 04、数组的遍历
- 05、案例训练
- 06、数组的定义方式二:动态初始化数组
- 07、案例训练
1-9 数组应用

- 08、数组在计算机中的执行原理,Java内存分配 免费试学
- 09、多个变量指向同一个数组 免费试学
- 10、数组案例:求最值 免费试学
- 11、数组案例:反转 免费试学
- 12、数组案例:随机排名 免费试学
- 13、补充知识:debug工具 免费试学
1-10 方法的定义

- 01、方法概述 免费试学
- 02、方法的其他定义形式 免费试学
- 03、方法使用时的常见问题 免费试学
- 04、方法的案例讲解 免费试学
- 05、方法在计算机中的执行 免费试学
1-11 方法的参数

- 06、Java的参数传递机制:基本类型的参数传递 免费试学
- 07、Java的参数传递机制:引用类型的参数传递机制 免费试学
- 08、参数传递的案例1 免费试学
- 09、参数传递的案例2 免费试学
- 10、方法重载 免费试学
- 11、return关键字 免费试学
1-12 案例一

- 01、案例开场 免费试学
- 02、买飞机票 免费试学
- 03、验证码2 免费试学
- 04、评委打分 免费试学
- 05、数组加密最终版 免费试学
- 06、数组拷贝 免费试学
1-13 案例二

- 07、抢红包 免费试学
- 08、找素数 免费试学
- 09、双色球概述 免费试学
- 10、随机一组中奖号码 免费试学
- 11、判断中奖情况 免费试学
第二章 面向对象基础

2-1 面向对象基础一

- 01、面向对象入门 免费试学
- 02、深刻认识面向对象 免费试学
- 03、对象在计算机中的执行原理 免费试学
- 04、类与对象的几点注意事项 免费试学
- 05、this关键字 免费试学
2-2 面向对象基础二

- 06、构造器
- 07、封装
- 08、实体JavaBean
- 09、面向对象编程的综合案例
- 10、成员变量、局部变量的区别(1.2倍速播放)
第三章 API基础

3-1 API基础

- 01、今日课程介绍:常用API
- 02、包的概述
- 03、String概述
- 04、String提供的常用方法
- 05、String的注意事项
3-2 String案例、ArrayList

- 06、String应用案例:用户登录
- 07、String应用案例:验证码
- 08、ArrayList集合的概述
- 09、ArrayList集合的使用
- 10、ArrayList的应用案例
- 11、ArrayList的综合案例
第四章 综合案例

4-1 综合案例一

- 01、ATM项目介绍
- 02、系统架构搭建、欢迎页面设计
- 03、开户功能
- 04、开户功能-生成新卡号
- 05、用户登录
4-2 综合案例二

- 06、登录后的操作页展示、查询账户、退出
- 07、存款、取款
- 08、转账
- 09、销户操作
- 10、密码修改
阶段二 JavaSE进阶
展开第一章 面向对象高级部分

1-1 static

- 01、面向对象高级部分内容介绍 免费试学
- 02、static:修饰成员变量 免费试学
- 03、static:类变量的应用场景 免费试学
- 04、static:修饰成员方法 免费试学
- 05、static:类方法的应用场景-工具类 免费试学
- 06、static:注意事项 免费试学
1-2 设计模式&继承

- 07、类的成分:代码块 免费试学
- 08、设计模式:概述、饿汉式单例 免费试学
- 09、设计模式:懒汉式单例 免费试学
- 10、继承:概述 免费试学
- 11、继承:使用继承的好处 免费试学
- 12、继承:权限修饰符 免费试学
1-3 继承

- 13、继承:特点详解 免费试学
- 14、继承:方法重写 免费试学
- 15、继承:子类访问的特点 免费试学
- 16、继承:子类构造器的特点 免费试学
- 17、继承:子类构造器的常见应用 免费试学
- 18、其他:this()调用兄弟构造器 免费试学
1-4 多态、关键字、抽象类

- 19、多态:概述 免费试学
- 20、多态:使用多态的好处 免费试学
- 21、前置知识:final关键字 免费试学
- 22、前置知识:常量 免费试学
- 23、抽象类:认识抽象类 免费试学
- 24、抽象类:使用抽象类的好处 免费试学
- 25、抽象类:模板方法设计模式 免费试学
1-5 接口

- 26、接口:认识接口 免费试学
- 27、接口:使用接口的好处 免费试学
- 28、接口:综合案例 免费试学
- 29、接口:JDK8开始、新增的方法 免费试学
- 30、接口:接口的多继承、使用接口的注意事项[了解] 免费试学
1-6 内部类、枚举

- 31、内部类:概述、成员内部类 免费试学
- 32、内部类:静态内部类[了解] 免费试学
- 33、内部类:匿名内部类[重点] 免费试学
- 34、内部类:匿名内部类的使用场景 免费试学
- 35、枚举:认识枚举 免费试学
- 36、枚举:枚举的作用 免费试学
1-7 泛型

- 37、泛型:认识泛型 免费试学
- 38、泛型:泛型类 免费试学
- 39、泛型:泛型接口 免费试学
- 40、泛型:泛型方法 免费试学
- 41、泛型:泛型的注意事项 免费试学
第二章 常用API

2-1 常用API一

- 42、API课程介绍
- 43、API:Object类的toString、equals方法
- 44、API-Object的克隆方法
- 45、API-Objects类
- 46、API-包装类
2-2 常用API二

- 47、API-StringBuilder
- 48、API-StringBuilder拼接案例
- 49、API-StringJoiner
- 50、API-Math、System
- 51、API-Runtime
- 52、API-BigDecimal讲解
2-3 时间日期类

- 53、传统时间:Date日期类
- 54、传统时间:SimpleDateFormat
- 55、传统时间:秒杀案例
- 56、传统时间:Calendar
- 57、为啥要学习JDK8新增的时间
2-4 JDK8新时间

- 58、JDK8新时间:LocalDate、LocalTime、LocalDateTime
- 59、JDK8新时间:ZoneId、ZonedDateTime
- 60、JDK8新时间:Instant
- 61、JDK8新时间:DateTimeFormatter
- 62、JDK8新时间:Period、Duration
2-5 Arrays类

- 63、Arrays类:基本使用
- 64、Arrays类:自定义排序规则的方式一
- 65、Arrays类:自定义排序规则的方式二
第三章 JDK8新特性

3-1 JDK8新特性、算法

- 66、JDK8新特性:Lambda表达式
- 67、JDK8新特性:Lambda表达式省略规则
- 68、JDK8新特性:方法引用
- 69、JDK8新特性:特定类型的方法引用
- 70、JDK8新特性:构造器引用【了解】
- 71、算法:简单认识算法
- 72、算法:排序算法-冒泡排序
- 73、算法:排序算法-选择排序
3-2 算法、正则表达式

- 74、算法:查找算法-二分查找
- 75、正则表达式:概述、初体验
- 76、正则表达式:匹配规则
- 77、正则表达式:应用案例
- 78、正则表达式:爬取内容
- 79、正则表达式:用于搜索、替换内容
第四章 异常处理

4-1 异常

- 80、异常:认识异常
- 81、异常:自定义异常、异常的作用
- 82、异常:异常的常见处理方式一
- 83、异常:异常的常见处理方式二
第五章 集合框架

5-1 Collection集合

- 84、集合进阶概述
- 85、Collection集合:常用API
- 86、Collection集合的遍历方式一:迭代器
- 87、Collection集合的遍历方式二:增强for循环
- 88、Collection集合的遍历方式三:Lambda
- 89、遍历集合的案例
5-2 List系列集合

- 90、List系列集合:特点、特有方法
- 91、List系列集合:遍历方式
- 92、List系列集合:ArrayList集合的底层原理
- 93、List系列集合:LinkedList集合的底层原理
- 94、List系列集合:LinkedList集合的应用场景:做队列、栈
5-3 Set系列集合

- 95、Set系列集合:整体特点
- 96、Set系列集合:HashSet集合的底层原理1
- 97、Set系列集合:HashSet集合的底层原理2
- 98、Set系列集合:HashSet集合去重复机制
- 99、Set系列集合:LinkedHashSet集合
- 100、Set系列集合:TreeSet集合
5-4 集合补充知识、综合案例

- 101、Collection系列集合的小结
- 102、补充知识:集合的并发修改异常问题
- 103、前置知识:可变参数
- 104、集合的工具类:Collecitons
- 105、综合案例:斗地主业务分析、做牌
- 106、综合案例:洗牌,发牌,排序,看牌
5-5 Map系列集合

- 107、Map系列集合:概述
- 108、Map系列集合:常用方法
- 109、Map系列集合的遍历方式一:键找值
- 110、Map系列集合的遍历方式二:键值对
- 111、Map系列集合的遍历方式三:Lambda
- 112、Map系列集合:应用案例
- 113、Map系列集合:HashMap
5-6 Map、JDK8新特性

- 114、Map系列集合:LinkedHashMap集合的原理
- 115、Map系列集合:TreeMap集合的原理、使用
- 116、补充知识:集合的嵌套
- 117、JDK8新特性:Stream流入门
- 118、JDK8新特性:Stream流的创建
- 119、JDK8新特性:Stream流的中间方法
- 120、JDK8新特性:Stream流的中间方法2
- 121、JDK8新特性:Stream流的终结方法
第六章 IO流体系

6-1 File类

- 122、File、IO流概述
- 123、File类:对象的创建
- 124、File类:判断、判断信息相关的方法
- 125、File类:创建、删除文件的方法
- 126、File类:遍历文件夹的方法
6-2 前置知识

- 127、前置知识:方法递归
- 128、前置知识:方法递归的算法、执行流程详解
- 129、方法递归的案例:文件搜索
- 130、前置知识:字符集
- 131、前置知识:字符集之UTF-8编码
- 132、前置知识: Java代码完成编码、解码
6-3 字节流

- 133、IO流概述
- 134、IO流:文件字节输入流-每次读取一个字节
- 135、IO流:文件字节输入流-每次读取一个字节存在的问题
- 136、IO流:文件字节输入流-每次读取多个字节
- 137、IO流:文件字节输入流-每次读取多个字节、改进,注意事项
- 138、IO流:文件字节输入流-一次读取完全部字节
- 139、IO流:文件字节输出流-写数据出去
6-4 字节流、字符流

- 140、IO流:字节流的应用-文件复制
- 141、释放资源的方案一:try-catch-finally
- 142、释放资源的方案二:try-with-resource
- 143、IO流:字符流-文件字符输入流
- 144、IO流:字符流-文件字符输出流
- 145、IO流:字符流-文件字符输出流的注意事项
6-5 缓冲流

- 146、IO流:缓冲流-概述-字节缓冲流
- 147、IO流:缓冲流-字符缓冲输入流
- 148、IO流:缓冲流-字符缓冲输出流
- 149、IO流:原始流、缓冲流的性能分析
- 150、引出问题:不同编码读取会出现乱码
6-6 其他流

- 151、IO流:转换流-字符输入转换流
- 152、IO流:转换流-字符输出转换流
- 153、IO流:打印流
- 154、IO流:打印流的应用
- 155、IO流:数据流
- 156、IO流:序列化流
- 157、补充知识:IO框架
第七章 特殊文件、日志框架

7-1 特殊文件

- 158、特殊文件、日志技术概述
- 159、特殊文件:Properties属性文件
- 160、特殊文件:XML概述
- 161、特殊文件:XML的解析
- 162、特殊文件:XML的解析2
- 163、特殊文件:XML的创建
7-2 日志技术

- 164、特殊文件:XML的约束
- 165、日志技术:概述
- 166、日志技术:体系结构、Logback日志框架介绍
- 167、日志技术:logback的快速入门
- 168、日志技术:logback的核心配置文件详解
- 169、日志技术:logback的日志级别
第八章 多线程

8-1 多线程使用

- 170、多线程:概述、线程创建方式一
- 171、多线程:线程创建方式二
- 172、多线程:线程创建方式二(匿名内部类写法)
- 173、多线程:线程创建方式三
- 174、多线程:线程的常用方法
8-2 线程安全、线程同步

- 175、线程安全问题:概述
- 176、线程安全问题:模拟取钱案例
- 177、线程同步:概述
- 178、线程同步:同步代码块
- 179、线程同步:同步方法
- 180、线程同步:Lock锁
- 181、线程通信[了解]
8-3 线程池、其他细节

- 182、线程池:概述
- 183、线程池:线程池的创建
- 184、线程池:处理Runnable任务
- 185、线程池:处理Callable任务
- 186、线程池:使用Executors得到线程池
- 187、其他细节:并发并行
- 188、其他细节:生命周期
第九章 网络编程

9-1 通信三要素

- 189、网络编程概述
- 190、通信三要素:IP地址
- 191、通信三要素:InetAddress
- 192、通信三要素:端口号
- 193、通信三要素:协议-UDP
- 194、通信三要素:协议-TCP
9-2 UDP、TCP通信

- 195、UDP通信:客户端发消息
- 196、UDP通信:服务端收消息,测试
- 197、UDP通信:多发、多收
- 198、TCP通信:客户端开发
- 199、TCP通信:服务端开发
- 200、TCP通信:多发多收
9-3 TCP通信

- 201、TCP通信:支持与多个客户端同时通信的原理
- 202、TCP通信:用代码实现与多个客户端同时通信
- 203、TCP通信:群聊(拓展,可选)
- 204、TCP通信:实现BS架构
- 205、TCP通信:线程池优化BS架构
第十章 Java高级技术

10-1 单元测试、反射

- 206、Java高级技术、Junit单元测试框架入门
- 207、Junit单元测试:断言、小结
- 208、Junit单元测试:常见注解
- 209、反射:认识反射、获取类
- 210、反射:获取类的构造器
- 211、反射:获取类的构造器的作用
10-2 注解

- 212、反射:获取类的成员变量
- 213、反射:获取类的成员方法
- 214、反射:作用、应用场景
- 215、注解:认识注解
- 216、注解:元注解
- 217、注解:注解的解析
- 218、注解:注解的应用场景演示
10-3 动态代理

- 219、动态代理:介绍、准备工作
- 220、动态代理:创建、工作流程演示
- 221、动态代理:应用、好处
阶段三 Web开发+SSM
展开第一章 HTML、CSS

1-1 阶段学习反馈

- 【JavaSE基础和进阶】阶段学习反馈
1-2 HTML快速入门和基础标签1

- 01. web开发-介绍 免费试学
- 02. Web前端开发-课程安排 免费试学
- 03. Web前端开发-HTML-快速入门 免费试学
- 04. HTML-VSCode安装 免费试学
- 05. HTML-新浪新闻-实现标题-排版 免费试学
- 06. HTML-新浪新闻-实现标题-样式1 免费试学
- 07. HTML-新浪新闻-实现标题-样式2 免费试学
1-3 基础标签2和CSS

- 08. HTML-新浪新闻-实现标题-超链接 免费试学
- 09. HTML-新浪新闻-实现正文-排版 免费试学
- 10. HTML-新浪新闻-实现正文-布局 免费试学
- 11. HTML-表格标签 免费试学
- 12. HTML-表单标签 免费试学
- 13. HTML-表单项标签 免费试学
第二章 JavaScript、Vue

2-1 JavaScript基础

- 14. JavaScript-介绍 免费试学
- 15. JavaScript-引入方式 免费试学
- 16. JavaScript-基础语法-书写语法 免费试学
- 17. JavaScript-基础语法-变量 免费试学
- 18. JavaScript-基础语法-数据类型&运算符 免费试学
2-2 JS函数&JS对象1

- 01. JS-函数 免费试学
- 02. JS-对象-Array数组 免费试学
- 03. JS-对象-String字符串 免费试学
- 04. JS-对象-JSON 免费试学
2-3 JS对象2&JS事件

- 05. JS-对象-BOM 免费试学
- 06. JS-对象-DOM 免费试学
- 07. JS-对象-DOM案例 免费试学
- 08. JS-事件-事件绑定 免费试学
- 09. JS-事件-常见事件 免费试学
- 10. JS-事件-案例 免费试学
2-4 Vue指令&生命周期

- 11. Vue-概述 免费试学
- 12. Vue-指令-v-bind&v-model 免费试学
- 13. Vue-指令-v-on 免费试学
- 14. Vue-指令-v-if&v-show 免费试学
- 15. Vue-指令-v-for 免费试学
- 16. Vue-指令-案例 免费试学
- 17. Vue-生命周期 免费试学
第三章 Vue、ElementUI

3-1 Ajax&前后端分离

- 01. Ajax-介绍
- 02. Ajax-Axios
- 03. Ajax-Axios-案例
- 04. 前后端分离开发-介绍
- 补充课-yapi
- 05. 前后端分离开发-YApi
- 06. 前端工程化-环境准备
3-2 前端工程化&Element组件

- 07. 前端工程化-Vue项目
- 08. 前端工程化-Vue项目开发流程
- 09. Element-快速入门
- 10. Element-组件-Table表格
- 11. Element-组件-Pagination分页
- 12. Element-组件-Dialog对话框
- 13. Element-组件-Form表单
3-3 Element案例&项目部署

- 14. Element-案例-基本页面布局
- 15. Element-案例-页面组件实现
- 16. Element-案例-axios异步加载数据
- 17. vue路由
- 18. 打包部署
第四章 Maven

4-1 Maven

- 01. maven-课程介绍 免费试学
- 02. maven-概述-maven介绍 免费试学
- 03. maven-概述-maven安装 免费试学
- 04. maven-idea集成-配置及创建maven项目 免费试学
- 05. maven-idea集成-导入maven项目 免费试学
- 06. maven-依赖管理-依赖配置 免费试学
- 07. maven-依赖管理-依赖传递 免费试学
- 08. maven-依赖管理-依赖范围 免费试学
- 09. maven-依赖管理-生命周期 免费试学
第五章 SpringBootWeb开发基础

5-1 Web入门

- 10. Web入门-课程介绍 免费试学
- 11. Web入门-SpringBootWeb-快速入门 免费试学
- 12. Web入门-HTTP协议-概述 免费试学
- 13. Web入门-HTTP协议-请求协议 免费试学
- 14. Web入门-HTTP协议-响应协议 免费试学
- 15. Web入门-HTTP协议-协议解析 免费试学
- 16. Web入门-Tomcat-介绍 免费试学
- 17. Web入门-Tomcat-基本使用 免费试学
- 18. Web入门-Tomcat-入门程序解析(内嵌tomcat) 免费试学
5-2 请求&响应(一)

- 01. 请求响应-概述 免费试学
- 02. 请求响应-请求-postman工具 免费试学
- 03. 请求响应-请求-简单参数 免费试学
- 04. 请求响应-请求-实体参数 免费试学
- 05. 请求响应-请求-数组集合参数 免费试学
- 06. 请求响应-请求-日期参数 免费试学
5-3 请求&响应(二)

- 07. 请求响应-请求-json参数
- 08. 请求响应-请求-路径参数
- 09. 请求响应-响应-@ResponseBody&统一响应结果
- 10. 请求响应-响应-案例
5-4 分层解耦

- 11. 分层解耦-三层架构
- 12. 分层解耦-分层解耦(IOC-DI引入)
- 13. 分层解耦-IOC&DI-入门
- 14. 分层解耦-IOC&DI-IOC详解
- 15. 分层解耦-IOC&DI-DI详解
第六章 MySQL基础

6-1 MySQL介绍&DDL1

- 01. MySQL-课程介绍
- 02. MySQL-概述-安装配置
- 03. MySQL-概述-数据模型
- 04. MySQL-概述-SQL简介
- 05. MySQL-DDL-数据库操作
- 06. MySQL-DDL-图形化工具
6-2 DDL2

- 07. MySQL-DDL-表结构操作-创建
- 08. MySQL-DDL-表结构操作-数据类型
- 09. MySQL-DDL-表结构操作-创建-案例
- 10. MySQL-DDL-表结构操作-查询&修改&删除
6-3 DML&DQL1

- 11. MySQL-DML-添加数据insert
- 12. MySQL-DML-修改数据update
- 13. MySQL-DML-删除数据delete
- 01. MySQL-DQL-基本查询
- 02. MySQL-DQL-条件查询
6-4 DQL2

- 03. MySQL-DQL-聚合函数
- 04. MySQL-DQL-分组查询
- 05. MySQL-DQL-排序查询
- 06. MySQL-DQL-分页查询
- 07. MySQL-DQL-案例一
- 08. MySQL-DQL-案例二
第七章 MySQL数据库多表设计、操作

7-1 多表设计

- 09. MySQL-多表设计-一对多 免费试学
- 10. MySQL-多表设计-一对多-外键 免费试学
- 11. MySQL-多表设计-一对一&多对多 免费试学
- 12. MySQL-多表设计-案例-关系分析 免费试学
- 13. MySQL-多表设计-案例-表结构1 免费试学
- 14. MySQL-多表设计-案例-表结构2 免费试学
7-2 多表查询

- 01. MySQL-多表查询-概述
- 02. MySQL-多表查询-内连接
- 03. MySQL-多表查询-外连接
- 04. MySQL-多表查询-子查询(标量、列)
- 05. MySQL-多表查询-子查询(行、表)
- 06. MySQL-多表查询-案例1
- 07. MySQL-多表查询-案例2
7-3 事务&索引

- 08. MySQL-事务-介绍与操作
- 09. MySQL-事务-四大特性
- 10. MySQL-索引-介绍
- 11. MySQL-索引-结构
- 12. MySQL-索引-操作语法
第八章 MyBatis

8-1 Mybatis-入门

- 13. Mybatis-入门-课程介绍 免费试学
- 14. Mybatis-入门-快速入门分析 免费试学
- 15. Mybatis-入门-快速入门实现 免费试学
- 16. Mybatis-入门-配置SQL提示 免费试学
- 17. Mybatis-入门-JDBC 免费试学
- 18. Mybatis-入门-数据库连接池 免费试学
- 19. Mybatis-入门-lombok工具包介绍 免费试学
8-2 Mybatis-基础操作

- 01. Mybatis-基础操作-环境准备 免费试学
- 02. Mybatis-基础操作-删除 免费试学
- 03. Mybatis-基础操作-删除(预编译SQL) 免费试学
- 04. Mybatis-基础操作-新增 免费试学
- 05. Mybatis-基础操作-新增(主键返回) 免费试学
- 06. Mybatis-基础操作-更新 免费试学
- 07. Mybatis-基础操作-查询(根据ID查询) 免费试学
8-3 XML映射文件&动态SQL

- 08. Mybatis-基础操作-查询(条件查询)
- 09. Mybatis-XML映射文件
- 10. Mybatis-动态SQL-if
- 11. Mybatis-动态SQL-if-案例
- 12. Mybatis-动态SQL-foreach
- 13. Mybatis-动态SQL-sql&include
第九章 SpringBootWeb案例

9-1 准备工作&部门管理

- 01. 案例-准备工作-需求分析和工程搭建 免费试学
- 02. 案例-准备工作-开发规范 免费试学
- 03. 案例-部门管理-查询 免费试学
- 04. 案例-部门管理-前后端联调 免费试学
- 05. 案例-部门管理-删除 免费试学
- 06. 案例-部门管理-新增 免费试学
9-2 员工管理

- 07. 案例-员工管理-分页查询-分析 免费试学
- 08. 案例-员工管理-分页查询-实现 免费试学
- 09. 案例-员工管理-分页查询-PageHelper插件 免费试学
- 10. 案例-员工管理-分页条件查询 免费试学
- 11. 案例-员工管理-删除员工 免费试学
9-3 文件上传

- 01. 案例-员工管理-新增员工
- 02. 案例-文件上传-简介
- 03. 案例-文件上传-本地存储
- 04. 案例-文件上传-阿里云OSS-准备
- 05. 案例-文件上传-阿里云OSS-入门
- 06. 案例-文件上传-阿里云OSS-集成
9-4 修改员工&配置文件

- 07. 案例-修改员工-查询回显
- 08. 案例-修改员工-修改员工
- 09. 案例-配置文件-参数配置化
- 10. 案例-配置文件-yml配置文件
- 11. 案例-配置文件-@ConfigurationProperties
第十章 登录认证

10-1 登录功能概述&会话技术

- 01. 基础登录功能
- 02. 登录校验-概述
- 03. 登录认证-登录校验-会话技术
- 04. 登录认证-登录校验-会话跟踪方案一
- 05. 登录认证-登录校验-会话跟踪方案二、三
10-2 登录校验

- 06. 登录校验-JWT令牌-介绍
- 07. 登录校验-JWT令牌-生成和校验
- 08. 登录校验-JWT令牌-登录后下发令牌
- 09. 登录校验-Filter-入门
- 10. 登录校验-Filter-详解(执行流程-拦截路径)
- 11. 登录校验-Filter-详解(过滤器链)
10-3 登录校验&异常处理

- 12. 登录校验-Filter-登录校验过滤器
- 13. 登录校验-Filter-登录校验过滤器测试
- 14. 登录校验-Interceptor-入门
- 16. 登录校验-Interceptor-登录校验拦截器
- 15. 登录校验-Interceptor-详解
- 17. 异常处理
第十一章 AOP

11-1 事务管理

- 01. 事务管理-事务回顾-spring事务管理
- 02. 事务管理-事务进阶-rollbackFor属性
- 03. 事务管理-事务进阶-propagation属性
11-2 AOP基础&AOP进阶1

- 04. AOP基础-快速入门
- 05. AOP基础-核心概念
- 06. AOP进阶-通知类型
- 07. AOP进阶-通知顺序
11-3 AOP进阶2&案例

- 08. AOP进阶-切入点表达式-execution
- 09. AOP进阶-切入点表达式-@annotation
- 10. AOP进阶-连接点
- 11. AOP案例-记录操作日志-思路
- 12. AOP案例-记录操作日志-实现
第十二章 SpringBoot原理篇

12-1 配置优先级&bean管理

- 01. SpringBoot-配置优先级 免费试学
- 02. bean的管理-bean的获取 免费试学
- 03. bean的管理-bean的作用域 免费试学
- 04. bean的管理-第三方bean 免费试学
12-2 SpringBoot起步依赖&自动配置原理

- 05. SpringBoot原理-起步依赖
- 06. SpringBoot原理-自动配置-概述
- 07. SpringBoot原理-自动配置-方案
- 08. SpringBoot原理-自动配置-原理分析-源码跟踪
- 09. SpringBoot原理-自动配置-原理分析-@Conditional
12-3 自定义starter&Web后端开发总结

- 10. SpringBoot原理-自动配置-案例(自定义starter分析)
- 11. SpringBoot原理-自动配置-案例(自定义starter实现)
- 12. SpringBoot原理-自动配置-案例(自定义starter测试)
- 13. Web后端开发-总结
第十三章 Maven高级

13-1 Maven高级

- 01. maven高级-分模块设计与开发
- 02. maven高级-继承与聚合-继承关系实现
- 03. maven高级-继承与聚合-版本锁定
- 04. maven高级-继承与聚合-聚合实现
- 05. maven高级-私服-介绍
- 06. maven高级-私服-资源上传与下载
阶段四 项目1-苍穹外卖
展开第一章 Git

1-1 阶段学习反馈

- 【Web开发+SSM】阶段学习反馈
1-2 Git

- 01-Git课程介绍
- 02-Git概述(介绍、下载、安装)
- 03-Git代码托管服务
- 04-Git常用命令(Git全局设置、获取Git仓库)
- 05-Git常用命令(版本库、工作区、暂存区相关概念)
- 06-Git常用命令(工作区中文件的状态)
- 07-Git常用命令(Git本地仓库操作命令)
- 08-Git常用命令(Git远程仓库操作命令_查看、添加、克隆、推送)
- 09-Git常用命令(Git远程仓库操作命令_拉取)
- 10-Git常用命令(分支操作命令)
- 11-Git常用命令(分支合并冲突解决)
- 12-Git常用命令(标签操作命令)
- 13-在IDEA中使用Git(配置Git、获取Git仓库)
- 14-在IDEA中使用Git(.gitignore文件的作用)
- 15-在IDEA中使用Git(本地仓库操作)
- 16-在IDEA中使用Git(远程仓库操作)
- 17-在IDEA中使用Git(分支操作)
第二章 苍穹外卖

2-1 项目介绍

- 01-项目效果展示
- 02-软件开发整体介绍
- 03-苍穹外卖项目介绍
- 04-开发环境搭建_前端环境搭建
- 05-开发环境搭建_后端环境搭建_熟悉项目结构
- 06-开发环境搭建_后端环境搭建_使用Git进行版本控制
2-2 开发环境搭建

- 07-开发环境搭建_后端环境搭建_数据库环境搭建
- 08-开发环境搭建_后端环境搭建_前后端联调_通过断点调试熟悉项目代码特点
- 09-开发环境搭建_后端环境搭建_前后端联调_Nginx反向代理和负载均衡概念
- 10-开发环境搭建_后端环境搭建_前后端联调_Nginx反向代理和负载均衡配置
- 11-开发环境搭建_完善登录功能
- 12-导入接口文档
- 13-Swagger_介绍和使用方式
- 14-Swagger_常用注解
2-3 新增员工

- 01-新增员工_需求分析和设计
- 02-新增员工_代码开发
- 03-新增员工_功能测试
- 04-新增员工_代码完善1
- 05-新增员工_代码完善2
2-4 员工分页查询

- 06-员工分页查询_需求分析和设计
- 07-员工分页查询_代码开发
- 08-员工分页查询_功能测试
- 09-员工分页查询_代码完善
- 10-启用禁用员工账号_需求分析和设计
- 11-启用禁用员工账号_代码开发和功能测试
2-5 编辑员工&公共字段自动填充

- 12-编辑员工_需求分析和设计
- 13-编辑员工_代码开发
- 14-编辑员工_功能测试
- 15-导入分类管理功能代码
- 01-公共字段自动填充_问题分析和实现思路
- 02-公共字段自动填充_代码开发_1
- 03-公共字段自动填充_代码开发_2
2-6 新增菜品

- 04-公共字段自动填充_功能测试
- 05-新增菜品_需求分析和设计
- 06-新增菜品_代码开发_1
- 07-新增菜品_代码开发_2
- 08-新增菜品_代码开发_3
- 09-新增菜品_功能测试
2-7 菜品分页查询&删除菜品&修改菜品

- 10-菜品分页查询_需求分析和设计
- 11-菜品分页查询_代码开发和功能测试
- 12-删除菜品_需求分析和设计
- 13-删除菜品_代码实现
- 14-删除菜品_功能测试
- 15-修改菜品_需求分析和设计
- 16-修改菜品_代码开发_1
- 17-修改菜品_代码开发_2
- 18-修改菜品_功能测试
2-8 Redis常用命令

- 01-课程内容介绍
- 02-Redis入门
- 03-Redis常用数据类型
- 04-Redis常用命令_字符串操作命令
- 05-Redis常用命令_哈希操作命令
- 06-Redis常用命令_列表操作命令
- 07-Redis常用命令_集合操作命令
- 08-Redis常用命令_有序集合操作命令
- 09-Redis常用命令_通用命令
2-9 在Java中操作Redis_Spring Data Redis使用方式&店铺营业状态设置

- 10-在Java中操作Redis_Spring Data Redis使用方式_操作步骤说明
- 11-在Java中操作Redis_Spring Data Redis使用方式_环境搭建
- 12-在Java中操作Redis_Spring Data Redis使用方式_操作字符串类型的数据
- 13-在Java中操作Redis_Spring Data Redis使用方式_操作哈希类型的数据
- 14-在Java中操作Redis_Spring Data Redis使用方式_其他类型的数据操作
- 15-店铺营业状态设置_需求分析和设计
- 16-店铺营业状态设置_代码开发
- 17-店铺营业状态设置_功能测试
2-10 HttpClient&微信小程序开发

- 01-本章课程内容介绍
- 02-HttpClient_介绍
- 03-HttpClient_入门案例_发送GET方式请求
- 04-HttpClient_入门案例_发送POST方式请求
- 05-微信小程序开发_介绍
- 06-微信小程序开发_准备工作
- 07-微信小程序开发_入门案例_1
- 08-微信小程序开发_入门案例_2
- 09-微信小程序开发_入门案例_3
- 10-微信小程序开发_入门案例_4
- 11-微信小程序开发_发布小程序
2-11 微信登录&导入商品浏览功能代码

- 12-微信登录_导入小程序代码
- 13-微信登录_微信登录流程
- 14-微信登录_需求分析和设计
- 15-微信登录_代码开发_1
- 16-微信登录_代码开发_2
- 17-微信登录_代码开发_3
- 18-微信登录_功能测试
- 19-导入商品浏览功能代码_需求分析和设计
- 20-导入商品浏览功能代码_代码导入和功能测试
2-12 缓存菜品&缓存套餐

- 01-课程内容介绍
- 02-缓存菜品_问题分析和实现思路
- 03-缓存菜品_代码开发_缓存菜品数据
- 04-缓存菜品_代码开发_清理缓存数据
- 05-缓存菜品_功能测试
- 06-缓存套餐_Spring Cache_介绍和常用注解
- 07-缓存套餐_Spring Cache_入门案例_1
2-13 添加购物车

- 08-缓存套餐_Spring Cache_入门案例_2
- 09-缓存套餐_Spring Cache_入门案例_3
- 10-缓存套餐_Spring Cache_入门案例_4
- 11-缓存套餐_代码开发
- 12-缓存套餐_功能测试
- 13-添加购物车_需求分析和设计
2-14 查看购物车&清空购物车

- 14-添加购物车_代码开发_1
- 15-添加购物车_代码开发_2
- 16-添加购物车_代码开发_3
- 17-添加购物车_功能测试
- 18-查看购物车
- 19-清空购物车
2-15 导入地址簿模块功能代码&用户下单

- 01-今日课程内容介绍
- 02-导入地址簿模块功能代码_需求分析和设计
- 03-导入地址簿模块功能代码_代码导入
- 04-导入地址簿模块功能代码_功能测试
- 05-用户下单_需求分析和设计_接口设计
- 06-用户下单_需求分析和设计_数据库设计
- 07-用户下单_代码开发1
2-16 用户下单&订单支付

- 08-用户下单_代码开发2
- 09-用户下单_代码开发3
- 10-用户下单_代码开发4
- 11-用户下单_功能测试
- 12-订单支付_微信支付介绍_微信支付产品和微信支付接入流程
- 13-订单支付_微信支付介绍_微信小程序支付时序图
2-17 订单支付

- 14-订单支付_微信支付介绍_微信支付相关接口介绍
- 15-订单支付_微信支付准备工作
- 16-订单支付_导入功能代码
- 17-订单支付_阅读订单支付功能代码
- 18-订单支付_功能测试
2-18 Spring Task&订单状态定时处理

- 01-Spring Task_介绍
- 02-Spring Task_cron表达式
- 03-Spring Task_入门案例
- 04-订单状态定时处理_需求分析
- 05-订单状态定时处理_代码开发
- 06-订单状态定时处理_功能测试
2-19 WebSocket&来单提醒&客户催单

- 07-WebSocket_介绍
- 08-WebSocket_入门案例_1
- 09-WebSocket_入门案例_2
- 10-来单提醒_需求分析和设计
- 11-来单提醒_代码开发
- 12-来单提醒_功能测试
- 13-客户催单_需求分析和设计
- 14-客户催单_代码开发
- 15-客户催单_功能测试
2-20 营业额统计

- 01-Apache ECharts_介绍
- 02-Apache ECharts_入门案例
- 03-营业额统计_需求分析和设计
- 04-营业额统计_代码开发_1
- 05-营业额统计_代码开发_2
- 06-营业额统计_代码开发_3
- 07-营业额统计_代码开发_4
2-21 用户统计&订单统计

- 08-营业额统计_功能测试
- 09-用户统计_需求分析和设计
- 10-用户统计_代码开发_1
- 11-用户统计_代码开发_2
- 12-用户统计_代码开发_3
- 13-用户统计_功能测试
- 14-订单统计_需求分析和设计
- 15-订单统计_代码开发_1
2-22 销量排名统计

- 16-订单统计_代码开发_2
- 17-订单统计_功能测试
- 18-销量排名统计_需求分析和设计
- 19-销量排名统计_代码开发_1
- 20-销量排名统计_代码开发_2
- 21-销量排名统计_功能测试
2-23 工作台&Apache POI

- 01-今日课程内容介绍
- 02-工作台_需求分析和设计
- 03-工作台_代码导入
- 04-工作台_功能测试
- 05-Apache POI_介绍
- 06-Apache POI_入门案例_通过POI向Excel文件写入文件内容
2-24 导出运营数据Excel报表

- 07-Apache POI_入门案例_通过POI读取Excel文件内容
- 08-导出运营数据Excel报表_需求分析和设计
- 09-导出运营数据Excel报表_代码开发1
- 10-导出运营数据Excel报表_代码开发2
- 11-导出运营数据Excel报表_代码开发3
- 12-导出运营数据Excel报表_功能测试
第三章 AI+若依框架

3-1 若依+AI入门

- 课程介绍
- 若依搭建
- 入门案例
3-2 功能详解

- 功能详解-权限控制
- 功能详解-数据字典
- 功能详解-其他功能
- 功能详解-监控相关
- 功能详解-定时任务
- 功能详解-表单构建
- 功能详解-代码生成
- 功能详解-系统接口
3-3 源码阅读

- 项目结构
- 源码阅读-前端代码分析
- 源码阅读-后端代码分析
- 源码阅读-权限注解
- 源码阅读-前后端交互流程
3-4 AIGC

- AIGC介绍
- 提示工程
- idea安装ai插件
3-5 基于AI改造苍穹外卖功能

- 二次开发-新建业务模块
- 二次开发-菜品管理
- 二次开发-列表改造
- 二次开发-口味改造
- 二次开发-页面调整
- 二次开发-购物车分析
- 二次开发-购物车实现
- 完结
阶段五 项目2-传智健康(沉浸式项目实战)
展开第一章 请联系班主任开通【传智健康】沉浸式项目实战

1-1 day01-day05

- 博学谷-沉浸式项目实战
1-2 day06-day10

- 博学谷-沉浸式项目实战
阶段六 服务框架基础
展开第一章 Linux

1-1 Linux01

- 01-Linux课程介绍
- 02-Linux简介
- 03-Linux安装(安装方式介绍、通过虚拟机安装Linux)
- 04-Linux安装(网卡设置、远程连接Linux)
- 05-Linux安装(熟悉Linux系统目录结构)
- 06-Linux常用命令_Linux命令初体验(几个常用命令)
- 07-Linux常用命令_Linux命令初体验(Linux命令使用技巧)
- 08-Linux常用命令_Linux命令初体验(Linux命令格式)
- 09-Linux常用命令_文件目录操作命令(ls、cd、cat、more、tail)
- 10-Linux常用命令_文件目录操作命令(mkdir、rmdir、rm)
- 11-Linux常用命令_拷贝移动命令(cp)
- 12-Linux常用命令_拷贝移动命令(mv)
- 13-Linux常用命令_打包压缩命令(tar)
- 14-Linux常用命令_文本编辑命令(vim)
- 15-Linux常用命令_查找命令(find、grep)
1-2 Linux02

- 01-软件安装_Linux中软件安装方式介绍
- 02-软件安装_安装jdk
- 03-软件安装_安装Tomcat(操作步骤、确认服务启动是否成功)
- 04-软件安装_安装Tomcat(防火墙相关操作)
- 05-软件安装_安装Tomcat(停止Tomcat服务)
- 06-软件安装_安装MySQL(操作步骤)
- 07-软件安装_安装MySQL(启动服务、连接MySQL)
- 08-软件安装_安装lrzsz
- 09-项目部署_手工部署项目(操作过程)
- 10-项目部署_手工部署项目(后台运行程序)
- 11-项目部署_通过Shell脚本自动部署项目(操作步骤说明、安装git和maven)
- 12-项目部署_通过Shell脚本自动部署项目(Shell脚本说明)
- 13-项目部署_通过Shell脚本自动部署项目(Linux中的权限)
- 14-项目部署_通过Shell脚本自动部署项目(授权并执行脚本)
- 15-项目部署_通过Shell脚本自动部署项目(设置静态ip)
第二章 Nginx

2-1 Nginx

- 15-Nginx课程内容介绍
- 16-Nginx概述_Nginx介绍
- 17-Nginx概述_Nginx下载和安装
- 18-Nginx概述_Nginx目录结构
- 19-Nginx命令_查看Nginx版本、检查配置文件正确性
- 20-Nginx命令_启动、停止
- 21-Nginx命令_启动、停止命令补充说明
- 22-Nginx命令_重新加载配置文件
- 23-Nginx命令_配置Nginx环境变量
- 24-Nginx配置文件整体结构
- 25-Nginx具体应用_部署静态资源
- 26-Nginx具体应用_反向代理_概念说明
- 27-Nginx具体应用_反向代理_配置
- 28-Nginx具体应用_负载均衡_概念说明
- 29-Nginx具体应用_负载均衡_配置
- 30-Nginx具体应用_负载均衡_Nginx提供的负载均衡策略
第三章 Mybatis-Plus

3-1 Mybatis-Plus

- 01.MybatisPlus介绍
- 02.快速入门-入门案例
- 03.快速入门-常用注解
- 04.快速入门-常用配置
- 05.核心功能-条件构造器
- 06.核心功能-自定义SQL
- 07.核心功能-IService接口基本用法
- 08.核心功能-IService开发基础业务接口
- 09.核心功能-IService开发复杂业务接口
- 10.核心功能-IService的Lambda方法
- 11.核心功能-IService的批量新增
- 12.扩展功能-代码生成器
- 13.扩展功能-DB静态工具
- 14.扩展功能-DB静态工具-练习
- 15.扩展功能-逻辑删除
- 16.扩展功能-枚举处理器
- 17.扩展功能-JSON处理器
- 18.插件功能-分页插件基本用法
- 19.插件功能-通用分页实体
- 20.插件功能-通用分页实体与MP转换
第四章 Docker

4-1 初识Docker

- 01.Docker课程介绍
- 02.Docker的安装
- 03.快速入门-部署MySQL
- 04.快速入门-命令解读
4-2 Docker基础

- 05.Docker基础-常见命令
- 06.Docker基础-命令别名
- 07.Docker基础-数据卷挂载
- 08.Docker基础-本地目录挂载
- 09.Docker基础-Dockerfile语法
- 10.Docker基础-自定义镜像
- 11.Docker基础-容器网络互连
4-3 项目部署

- 12.项目部署-部署Java应用
- 13.项目部署-部署前端
- 14.项目部署-DockerCompose
第五章 SpringCloud

5-1 初识微服务

- 01.微服务课程介绍
- 02.导入黑马商城
- 03.认识微服务-单体架构
- 04.认识微服务-微服务架构
- 05.认识微服务-SpringCloud
5-2 微服务&服务拆分

- 06.微服务拆分-熟悉黑马商城
- 07.微服务拆分-拆分原则
- 08.微服务拆分-微服务项目结构说明
- 09.微服务拆分-拆分商品服务
- 10.微服务拆分-拆分购物车服务
- 11.微服务拆分-远程调用
5-3 注册中心Nacos

- 12.服务治理-注册中心原理
- 13.服务治理-搭建Nacos注册中心
- 14.服务治理-服务注册
- 15.服务治理-服务发现和负载均衡
5-4 OpenFeign

- 16.OpenFeign-快速入门
- 17.OpenFeign-连接池
- 18.OpenFeign-最佳实践
- 19.OpenFeign-日志输出
- 20.布置作业
5-5 服务网关

- 01.什么是网关
- 02.网关路由-快速入门
- 03.网关路由-路由属性
- 04.网关登录校验-思路分析
- 05.网关登录校验-自定义GlobalFilter
- 06.网关登录校验-自定义GatewayFilter
- 07.网关登录校验-实现登录校验
- 08.网关登录校验-网关传递用户到微服务
- 09.网关登录校验-OpenFeign传递用户信息
5-6 配置管理

- 10.配置管理-什么是配置管理
- 11.配置管理-共享配置
- 12.配置管理-配置热更新
- 13.配置管理-动态路由(拓展)
阶段七 服务框架高级
展开第一章 Sentinel

1-1 Sentinel

- 01.雪崩问题-原因分析
- 02.雪崩问题-解决方案
- 03.Sentinel-快速入门
- 04.Sentinel-请求限流
- 05.Sentinel-线程隔离
- 06.Sentinel-Fallback
- 07.Sentinel-服务熔断
第二章 分布式事务

2-1 分布式事务Seata

- 08.分布式事务-什么是分布式事务
- 09.分布式事务-Seata的架构和原理
- 10.分布式事务-部署TC服务
- 11.分布式事务-微服务整合Seata
- 12.分布式事务-XA模式
- 13.分布式事务-AT模式原理
- 14.分布式事务-AT模式的使用
第三章 RabbitMQ

3-1 初识MQ&安装部署

- 01.MQ课程介绍
- 02.初识MQ-同步调用优缺点
- 03.初识MQ-异步调用优缺点
- 04.初识MQ-技术选型
- 05.RabbitMQ-安装部署
- 06.RabbitMQ-快速入门
- 07.RabbitMQ-数据隔离
3-2 Java客户端

- 08.Java客户端-快速入门
- 09.Java客户端-WorkQueue
- 10.Java客户端-Fanout交换机
- 11.Java客户端-Direct交换机
- 12.Java客户端-Topic交换机
- 13.Java客户端-基于Bean声明队列交换机
- 14.Java客户端-基于注解声明队列交换机
- 15.Java客户端-消息转换器
- 16.业务改造
3-3 消息可靠性

- 01.课程介绍
- 02.发送者可靠性-发送者重连
- 03.发送者可靠性-发送者确认机制
- 04.发送者可靠性-发送者确认的代码实现
- 05.MQ可靠性-数据持久化
- 06.MQ可靠性-LazyQueue
- 07.消费者可靠性-消费者确认机制
- 08.消费者可靠性-消费者失败重试策略
- 09.消费者可靠性-业务幂等处理
3-4 延迟消息

- 10.延迟消息-什么是延迟消息
- 11.延迟消息-死信交换机
- 12.延迟消息-延迟消息插件
- 13.延迟消息-取消超时订单
第四章 ElasticSearch

4-1 初识ES

- 01.为什么学习elasticsearch
- 02.初识ES-认识和安装ES
- 03.初识ES-倒排索引
- 04.初识ES-IK分词器
- 05.初识ES-基本概念
4-2 索引库操作&文档操作

- 06.索引库操作-Mapping映射属性
- 07.索引库操作-索引库的CRUD
- 08.文档操作-文档CRUD
- 09.文档操作-批量处理
4-3 JavaRestClient

- 10.JavaRestClient-客户端初始化
- 11.JavaRestClient-商品的Mapping映射
- 12.JavaRestCliet-索引库操作
- 13.JavaRestClient-新增文档
- 14.JavaRestClient-文档的CRUD
- 15.JavaRestClient-文档批处理
4-4 DSL查询语法

- 01.DSL查询-快速入门
- 02.DSL查询-叶子查询
- 03.DSL查询-复合查询
- 04.DSL查询-排序和分页
- 05.DSL查询-深度分页问题
- 06.DSL查询-高亮显示
4-5 结果处理&查询

- 07.JavaRestClient查询-快速入门
- 08.JavaRestClient查询-构建查询条件
- 09.JavaRestClient查询-排序和分页
- 10.JavaRestClient查询-高亮显示
4-6 数据聚合

- 11.聚合-聚合的分类
- 12.聚合-DSL实现聚合
- 13.聚合-Java客户端实现聚合
第五章 Redis面试篇

5-1 Redis面试篇

- 01.Redis主从-搭建主从集群
- 02.Redis主从-主从同步原理
- 03.Redis主从-主从集群优化
- 04.Reids主从-哨兵原理
- 05.Redis主从-搭建哨兵集群
- 06.Redis分片集群-搭建分片集群
- 07.Redis分片集群-散列插槽
- 08.Redis数据结构-RedisObject
- 09.Redis数据结构-SkipList
- 10.Redis数据结构-SortedSet
- 11.Redis内存回收-过期KEY处理
- 12.Redis内存回收-内存淘汰策略
- 13.Redis缓存-缓存一致性
- 14.Redis缓存-缓存穿透
- 15.Redis缓存-缓存雪崩
- 16.Redis缓存-缓存击穿
第六章 微服务面试篇

6-1 微服务面试篇

- 01.分布式事务-CAP和BASE
- 02.分布式事务-AT模式脏写问题
- 03.分布式事务-TCC模式
- 04.分布式事务-最大努力通知
- 05.注册中心-环境隔离
- 06.注册中心-服务分级模型
- 07.注册中心-Eureka和Nacos
- 08.远程调用-源码跟踪及负载均衡原理
- 09.远程调用-切换负载均衡算法
- 10.服务保护-线程隔离方案对比
- 11.服务保护-滑动窗口计数器算法
- 12.服务保护-漏桶算法
- 13.服务保护-令牌桶算法
阶段八 项目3-天机学堂
展开第一章 天机学堂

1-1 搭建项目环境

- 01.课程介绍
- 02.项目介绍-功能演示
- 03.项目介绍-功能亮点
- 04.搭建项目环境-企业开发模式
- 05.搭建项目环境-模拟企业环境
- 06.搭建项目环境-持续集成环境
- 07.搭建项目环境-测试部署的微服务
- 08.搭建项目环境-本地开发部署方式
1-2 BUG修复

- 09.修复BUG-BUG重现
- 10.修复Bug-熟悉项目
- 11.修复BUG-阅读源码
- 12.修复BUG-分析和解决
- 13.修复BUG-测试部署
1-3 分析产品原型-课程

- 01.今日课程介绍
- 02.分析产品原型-业务流程分析
- 03.分析产品原型-设计分页查询我的课表接口
- 04.分析产品原型-统计我的课程相关接口
- 05.分析产品原型-设计添加课程到课程表接口
- 06.分析产品原型-设计查询最近学习的课程接口
- 07.分析产品原型-设计查询指定课程学习状态接口
- 08.分析产品原型-抽取QUERY、DTO、VO实体
- 09.分析产品原型-数据库结构及PO
1-4 开发接口功能-课程

- 10.开发接口功能-添加课程到课表-思路分析
- 11.开发接口功能-添加课程到课表-代码实现
- 12.开发接口功能-分析登录用户传递流程
- 13.开发接口功能-分页查询我的课表
- 14.代码提交和分支合并
1-5 产品原型

- 01.今日课程介绍
- 02.产品原型-分析业务流程
- 03.产品原型.设计提交学习记录接口
- 04.产品原型-设计查询学习记录接口
- 05.产品原型-设计学习计划相关接口
- 06.产品原型-设计数据库表结构
1-6 开发接口-学习记录和学习计划

- 07.开发接口-查询指定课程学习记录
- 08.开发接口-提交学习记录的流程分析
- 09.开发接口-实现添加学习记录接口
- 10.开发接口-测试提交学习记录接口
- 11.开发接口-创建学习计划
- 12.开发接口-查询学习计划-分析代码流程
- 13.开发接口-查询我的学习计划-本周总的学习进度数据
- 14-开发接口-查询我的学习计划-分页数据查询
- 15.开发接口-测试我的学习计划接口
1-7 方案分析

- 01.今日课程介绍
- 02.方案分析-高并发优化方案分析
- 03.方案分析-播放进度统计优化方案
- 04.方案分析-播放进度统计数据持久化方案
- 05.方案分析-延迟任务
1-8 代码改造

- 06.代码改造-添加播放记录到缓存并添加延迟任务
- 07.代码改造-播放记录缓存的读取和清除方法
- 08.代码改造-异步执行延迟任务
- 09.代码改造-改造提交学习记录接口
- 10.代码改造-测试提交学习记录接口
- 11.课后思考题
1-9 分析产品原型-用户端和管理端

- 01.今日课程介绍
- 02.分析产品原型-业务流程分析和接口统计
- 03.分析产品原型-新增、修改、删除问题的接口设计
- 04.分析产品原型-分页查询问题和根据id查询问题接口设计
- 05.分析产品原型-管理端问题相关接口的设计
- 06.分析产品原型-新增回答或评论的接口设计
- 07.分析产品原型-分页查询回答或评论的接口设计
- 08.分析产品原型-设计业务实体及数据库表结构
1-10 开发接口-用户端和管理端

- 09.开发接口-新增问题接口
- 10.开发接口-用户端分页查询问题(上)
- 11.开发接口-用户端分页查询问题(下)
- 12.开发接口-用户端根据id查询问题详情
- 13.开发接口-管理端分页查询问题(上)
- 14.开发接口-管理端分页查询问题(下)
- 15.开发接口-管理端根据id查询问题详情的业务分析
- 16.开发接口-新增回答或评论
- 17.开发接口-分页查询回答或评论
1-11 点赞业务分析

- 01.今日课程介绍
- 02.点赞业务分析-需求和思路分析
- 03.点赞业务分析-数据表结构设计
- 04.点赞业务分析-准备业务实体
1-12 点赞业务功能

- 05.实现点赞功能-点赞或取消点赞接口设计
- 06.实现点赞功能-实现点赞或取消点赞接口
- 07.实现点赞功能-实现查询点赞状态接口
- 08.实现点赞功能-实现点赞数变更的消息监听器
1-13 点赞业务改进

- 09.点赞功能改进-改进思路分析
- 10.点赞功能改进-Redis数据结构设计
- 11.点赞功能改进-改造点赞和取消点赞接口
- 12.点赞功能改进-改造查询点赞状态接口
- 13.点赞功能改进-定时任务持久化缓存数据
1-14 签到功能

- 01.今日课程介绍
- 02.分析产品原型-分析业务并统计接口
- 03.分析产品原型-数据库结构设计和代码生成
- 04.签到功能-签到思路分析
- 05.签到功能-实现签到(上)
- 06.签到功能-实现签到(下)
- 07.签到功能-查询签到记录的思路分析
1-15 积分功能

- 08.积分功能-保存积分明细(上)
- 09.积分功能-保存积分明细(中)
- 10.积分功能-保存积分明细(下)
- 11.积分功能-查询我的今日积分
1-16 实时排行榜

- 01.今日课程介绍
- 02.实时排行榜-排行榜思路分析
- 03.实时排行榜-利用Redis生成实时排行榜
- 04.实时排行榜-查询学霸积分榜的接口声明
- 05.实时排行榜-实现查询学霸积分榜(当前赛季)
1-17 历史排行榜

- 06.历史排行榜-数据库的分区和分表
- 07.历史排行榜-分库和集群方案
- 08.历史排行榜-历史榜单分表策略
- 09.历史排行榜-定时生成历史榜单表
- 10.历史排行榜-分布式任务调度的常见技术
- 11.历史排行榜-XXL Job快速入门
- 12.历史排行榜-MybatisPlus的动态表名插件
- 13.历史排行榜-榜单持久化以及XXL Job工作流
- 14.历史排行榜-数据跑批业务和XXL Job的分片广播
1-18 优惠劵-产品原型分析

- 01.今日课程介绍
- 02.产品原型分析-分析业务流程
- 03.产品原型分析-接口统计和分析
- 04.产品原型分析-表结构设计
- 05.产品原型分析-代码生成
1-19 优惠劵管理和发放

- 06.优惠券管理-新增优惠券
- 07.优惠券管理-分页查询优惠券
- 08.优惠券发放-实现发放接口
- 09.优惠券发放-兑换码算法(上)
- 10.优惠券发放-兑换码算法(下)
- 11.优惠券发放-异步生成兑换码(上)
- 12.优惠券发放-异步生成兑换码(下)
1-20 分析产品原型-统计和分析

- 01.今日课程介绍
- 02.分析产品原型-接口统计和分析
- 03.分析产品原型-表结构设计
1-21 开发接口-查询和兑换优惠劵

- 04.开发接口-查询发放中的优惠券(上)
- 05.开发接口-查询发放中的优惠券(下)
- 06.开发接口-解决登录拦截放行问题
- 07.开发接口-领取优惠券
- 08.开发接口-兑换码兑换优惠券(上)
- 09.开发接口-兑换码兑换优惠券(下)
1-22 并发安全问题

- 10.并发安全问题-超卖问题
- 11.并发安全问题-乐观锁解决超卖问题
- 12.并发安全问题-锁失效和锁边界问题
- 13.并发安全问题-事务失效问题
1-23 分布式锁

- 01.今日课程介绍
- 02.分布式锁-集群下的锁失效问题
- 03.分布式锁-简单分布式锁原理
- 04.分布式锁-实现简单分布式锁
- 05.分布式锁-分布式锁的问题及Redisson简介
- 06.分布式锁-Redisson快速入门
- 07.分布式锁-基于自定义注解改造分布式锁
- 08.分布式锁-简单工厂模式改造分布式锁
- 09.分布式锁-策略模式改造分布式锁
- 10.分布式锁-SPEL表达式动态锁名称
1-24 异步领劵

- 11.异步领券-优化思路
- 12.异步领券-管理优惠券缓存
- 13.异步领券-基于Redis的领券和消息发送
- 14.异步领券-监听MQ消息实现异步领券
- 练习1-兑换码异步兑换的思路分析
- 练习2-基于Lua的优化思路分析
1-25 定义优惠规则

- 01.今日课程介绍
- 02.定义优惠规则-业务流程分析
- 03.定义优惠规则-编写优惠规则
1-26 优惠方案推荐

- 04.优惠方案推荐-思路分析
- 05.优惠方案推荐-定义接口
- 06.优惠方案推荐-优惠券查询和初筛
- 07.优惠方案推荐-细筛和券的全排列组合
- 08.优惠方案推荐-优惠明细的算法分析
- 09.优惠方案推荐-实现优惠明细的算法
- 10.优惠方案推荐-与交易服务联调测试
- 11.优惠方案推荐-ComplateFuture并发运算
- 12.优惠方案推荐-筛选最优解
阶段九 项目4-神领物流(沉浸式项目实战)
展开第一章 请联系班主任开通【神领物流】沉浸式项目实战

1-1 day01-day03

- 博学谷-沉浸式项目实战
1-2 day04-day06

- 博学谷-沉浸式项目实战
阶段十 项目5-餐掌柜(沉浸式项目实战)
展开第一章 请联系班主任开通【餐掌柜】沉浸式项目实战

1-1 day01-day04

- 博学谷-沉浸式项目实战
1-2 day05

- 博学谷-沉浸式项目实战
阶段十一 项目6、7-帝可得+共享按摩椅(沉浸式)/工作流组件课程
展开第一章 帝可得

1-1 day01

- 01.引言
- 02.需求分析-1
- 03.需求分析-2
- 04.产品原型
- 05.技术架构图
- 06.系统架构图
- 07.表关系梳理
- 08.表字段设计
- 09.接口设计
- 10.环境准备
- 11.代码运行
- 12.实体类关联
- 13.测试脚本
- 14.任务布置
1-2 day02

- 01.导学
- 02.管理员登录
- 03.运营运维人员登录
- 04.令牌框架简介
- 05.令牌框架快速入门
- 06.帝可得集成令牌框架
- 07.令牌框架原理解析
- 08.令牌问题面试技巧
- 09.权限框架入门
- 10.帝可得集成权限框架
- 11.权限框架原理分析
- 12.权限面试题
- 13.MQTT协议简介
- 14.Qos消息服务质量
- 15.主题通配符
- 16.emq简介
- 17.emq消息收发测试
- 18.mqttx工具使用
- 19.延迟发布
- 20.不带群组共享订阅
- 21.均衡策略
- 22.带群组共享订阅
- 23.paho发送消息
- 24.paho订阅消息
- 25.总结
1-3 day03

- 01.工单产品原型
- 02.工单需求梳理
- 03.工单表结构分析
- 04.工单代码梳理
- 05.工单脚本测试
- 06.工单联调测试
- 07.elegentAC框架介绍
- 08.elegentAC的demo演示
- 09.完成工单跨服务逻辑
- 10.elegentAC原理图
- 11.外观模式
- 12.模板方法模式
- 13.链路id的生成与传递
- 14.策略模式
- 15.面试200分答案
- 16.总结
1-4 day04

- 01.自动工单业务分析
- 02.代码优化-1
- 03.代码优化-2
- 04.代码优化测试
- 05.分布式锁方案选择与elegentLock
- 06.elegentLock的demo演示
- 07.帝可得应用分布式锁框架解决任务并发
- 08.分布式锁框架核心代码解析
- 09.分布式锁源码分析-redisson
- 10.分布式锁源码分析-红锁
- 11.consul分布式锁介绍
- 12.consul分布式锁源码分析
- 13.看门狗锁续命实现
- 14.自动维修工单代码实现
- 15.自动维修工单测试
- 16.问题解决思路
- 17.自动补货工单代码
- 18.去掉用户查询的权限注解
- 19.自动补货工单测试
- 20.总结
1-5 day05

- 01.导学
- 02.订单业务分析
- 03.订单表设计
- 04.订单创建逻辑
- 05.微信支付官网文档
- 06.支付宝官网文档
- 07.支付框架介绍
- 08.支付框架demo演示
- 09.内网穿透工具
- 10.屏幕端下单代码
- 11.屏幕端下单测试
- 12.小程序支付流程
- 13.小程序下单支付演示
- 14.定期巡检的实现
- 15.退款的实现
- 16.支付框架原理图
- 17.支付框架源码分析
- 18.接口幂等性实现方案
- 19.防止重复下单
- 20.接口幂等性原理和源码
- 21.超时订单处理
- 22.总结
1-6 day06

- 01.设备端核心探秘与H2
- 02.设备端发货代码与测试
- 03.编写核心功能-出货代码逻辑
- 04.出货测试
- 05.分布式事务理论与actx入门
- 06.分布式事务框架demo
- 07.分布式事务框架demo演示
- 08.分布式事务解决出货
- 09.出货分布式事务演示
- 10.分布式框架架构图
- 11.elegentACTX原理图讲解
- 12.核心数据初始化逻辑
- 13.分布式事务框架源码导读
- 14.总结
1-7 day07

- 01.es数据同步方案
- 02.logstash配置
- 03.logstash安装部署与数据同步测试
- 04.logstash面试题
- 05.查询订单(es)
- 06.查询订单(ES)测试
- 07.地理位置搜索es
- 08.地理位置搜索测试
- 09.地理位置搜索-联调
- 10.ACl与鉴权链
- 11.鉴权微服务源码
- 12.ACL配置文件
- 13.EMQ-ACL测试
- 14.acl面试题
- 15.webhook
- 16.设备端持续集成
- 17.总结
第二章 请联系班主任开通【帝可得-共享按摩椅】沉浸式项目实战

2-1 day01-day05

- 博学谷-沉浸式项目实战
2-2 day06-day10

- 博学谷-沉浸式项目实战
第三章 工作流组件

3-1 Activiti7入门

- 00、工作流组件—课程介绍
- 01、基本介绍
- 02、工作流项目介绍
- 03、环境搭建&demo&dev运行
- 04、拉取代码&导入代码并运行
- 05、工作流基本概念
- 06、入门案例—集成Activiti—新建项目&导入依赖
- 07、入门案例—配置属性&启动测试
- 08、入门案例—绘制流程图
- 09、入门案例—保存到数据库
- 10、入门案例—部署流程图
- 11、入门案例—运行流程&相关表分析
- 12、入门案例—完成填写请假单
- 13、入门案例—经理同意
- 14、入门案例—经理不同意
3-2 Activiti7玩转图例

- 01、上下级多人审批—基本实现—绘制多人多级审批流程
- 02、上下级多人审批—基本实现—运行多人多级审批流程
- 03、上下级多人审批—串行多实例方式实现多人多级审批
- 04、串行多实例的原理简单介绍
- 05、同级多人审批—基本实现
- 06、同级多人审批—并行多实例实现方式
- 07、并行多实例的原理简单介绍
- 08、同级多人审批—网关实现方式
- 09、分支审批请假单
- 10、订单统计日报流程开发
- 11、库存预警与采购流程—需求分析
- 12、库存预警与采购流程—绘制库存预警与采购子流程
- 13、库存预警与采购流程—库存分析代码实现
- 14、库存预警与采购流程—发起采购单&更新库存代码实现
- 15、库存预警与采购流程—补货&定时边界测试
- 16、库存预警与采购流程—错误&事务测试
3-3 Activiti7玩转状态图

- 01、OA系统介绍和学习路径介绍
- 02、状态图—需求分析&接口&数据准备
- 03、状态图—加载原图xml实现
- 04、状态图—查询XML优化&查询流程基本信息
- 05、状态图—查询高亮活动节点信息
- 06、状态图—查询高亮线的信息
- 07、状态图—高亮错乱分析&优化状态图状态不准确问题
- 08、状态图—高亮错乱解决的代码实现
- 09、状态图—悬浮提示需求分析&代码实现
- 10、状态图—流程状态图控制需求&思路分析
- 11、状态图—流程状图控制的代码实现
3-4 Activiti7玩转办理

- 01、取消功能—实现
- 02、取消功能—状态显示&状态图优化
- 03、同意功能开发&测试
- 04、不同意功能开发&测试
- 05、驳回功能—需求&思路分析&解析目标节点
- 06、驳回功能—代码实现&测试
- 07、驳回功能—网关卡死分析&优化&复现
- 08、驳回功能—网关卡死优化测试
- 09、驳回功能—网关驳回导致任务重复的问题&优化
- 10、驳回功能—多实例驳回无效复现&思路分析
- 11、驳回功能—多实例驳回代码实现&测试
- 12、委派功能—实现
- 13、认领和归还—需求分析
- 14、认领&归还—认领功能实现
- 15、认领&归还—归还功能实现
3-5 Activiti7玩转低代码

- 01、前加签—分析&功能实现
- 02、前加签—测试
- 03、并加签—分析&功能实现
- 04、并加签—测试
- 05、导入流程中心基本功能
- 06、表单保存—需求&新增思路分析
- 07、表单保存—保存基本、JSON、物理表信息
- 08、表单保存—保存字段、创建物理表
- 09、表单保存—修改基本、JSON
- 10、表单保存—修改字段
- 11、表单保存—事务分析及解决思路
- 12、表单保存—事务优化测试
3-6 Activiti7+低代码强强整合

- 01、表单与流程绑定—需求&思路分析、导入基础代码
- 02、表单与流程绑定—保存、部署、查询、运行接口改造
- 03、表单与流程绑定—状态图查询表单数据&测试
- 04、表单在流程中每个节点权限控制演示
- 05、暂存功能—分析&实现
- 06、表单数据回显的代码导入
- 07、提交功能—分析&实现
- 08、客户端—导入智慧养老项目
- 09、客户端—集成Hiss-SDK
- 10、客户端—我的待办SQL编写
- 11、客户端—待办数据查询实现&测试
阶段十二 BAT大厂360°面试突击
展开第一章 常用面试方法

1-1 企业常用面试方法学习

- 企业常用面试方法
第二章 面试篇

2-1 面试篇

- 面试篇1
- 面试篇2
第三章 试用期篇

3-1 试用期

- 试用期篇1
- 试用期篇2
第四章 BAT大厂360°面试突击

4-1 面试准备篇

- 01-准备篇-企业简历筛选规则
- 02-准备篇-简历注意事项
- 03-准备篇-应届生该如何找到合适的练手项目
- 04-准备篇-Java程序员的面试过程
4-2 Redis篇

- 01-redis开篇
- 02-redis使用场景-缓存-缓存穿透
- 03-redis使用场景-缓存-缓存击穿
- 04-redis使用场景-缓存-缓存雪崩
- 05-redis使用场景-缓存-双写一致性
- 06-redis使用场景-缓存-持久化
- 07-redis使用场景-缓存-数据过期策略
- 08-redis使用场景-缓存-数据淘汰策略
- 09-redis分布式锁-使用场景
- 10-redis分布式锁-实现原理(setnx、redisson)
- 11-redis其他面试问题-主从复制、主从同步流程
- 12-redis其他面试问题-哨兵模式、集群脑裂
- 13-redis其他面试问题-分片集群、数据读写规则
- 14-redis其他面试问题-redis是单线程的,但是为什么还那么快
4-3 MySQL篇

- 01-MySQL篇-课程介绍
- 02-优化-如何定位慢查询
- 03-优化-sql语句执行的很慢,如何分析
- 04-优化-索引概念及索引底层数据结构
- 05-优化-聚簇索引和非聚簇索引、回表查询
- 06-优化-覆盖索引、超大分页优化
- 07-优化-索引创建的原则
- 08-优化-什么情况下索引会失效
- 09-优化-谈一谈你对sql优化的经验
- 10-事务-事务的特性
- 11-事务-并发事务问题、隔离级别
- 12-事务-undo log 和 redo log的区别
- 13-事务-解释一下mvcc
- 14-MySQL-主从同步原理
- 15-MySQL-分库分表
4-4 框架篇

- 01-框架篇-课程介绍
- 02-Spring-单例bean是线程安全的吗
- 03-Spring-AOP相关面试题
- 04-Spring-事务失效的场景
- 05-Spring-bean的生命周期
- 06-Spring-bean的循环依赖(循环引用)
- 07-Springmvc-执行流程
- 08-Springboot-自动配置原理
- 09-spring框架常见的注解(spring、springmvc、springboot)
- 10-MyBatis-执行流程
- 11-Mybatis-延迟加载使用及原理
- 12-Mybatis-一级、二级缓存
4-5 微服务篇

- 01-微服务-课程介绍
- 02-springcloud-常见组件有哪些
- 03-springcloud-注册中心eureka、nacos
- 04-springcloud-ribbon负载均衡,负载均衡策略,自定义负载均衡
- 05-spring cloud-服务雪崩、熔断降级
- 06-spring-cloud-微服务的监控-skywalking
- 07-业务问题-微服务限流(漏桶算法、令牌桶算法)
- 08-分布式系统理论-CAP和BASE
- 09-业务问题-分布式事务解决方案
- 10-业务问题-分布式服务的接口幂等性如何设计
- 11-业务问题-你们项目中使用了什么分布式任务调度-xxl-job
4-6 消息中间件篇

- 01-消息中间件-课程介绍
- 02-RabbitMQ-如何保证消息不丢失
- 03-RabbitMQ-消息的重复消费问题如何解决的
- 04-RabbitMQ-中死信交换机 (RabbitMQ延迟队列有了解过嘛)
- 05-RabbitMQ-如果有100万消息堆积在MQ , 如何解决(消息堆积怎么解决)
- 06-RabbitMQ的高可用机制有了解过嘛
- 07-Kafka是如何保证消息不丢失
- 08-Kafka是如何保证消费的顺序性
- 09-Kafka的高可用机制有了解过嘛
- 10-Kafka数据清理机制了解过嘛
- 11-Kafka实现高性能的设计有了解过嘛
4-7 集合+数据结构篇

- 01-集合面试题-课程介绍
- 02-算法复杂度分析
- 03-ArrayList-数据结构-数组
- 04-ArrayList-源码分析
- 05-ArrayList-底层原理及构造函数相关面试题回答
- 06-ArrayList-如何实现数组和List之间的转换
- 07-LinkedList-数据结构-链表
- 08-ArrayList和LinkedList的区别是什么?
- 09-数据结构-二叉树
- 10-数据结构-红黑树
- 11-数据结构-散列表
- 12-HashMap-说一下HashMap的实现原理?
- 13-HashMap的put方法的具体流程
- 14-HashMap-讲一讲HashMap的扩容机制
- 15-HashMap源码分析-动画工具介绍
- 16-HashMap的寻址算法和数组长度为什么是2的n次幂
- 17-HashMap在1.7情况下的多线程死循环问题
4-8 多线程篇

- 01-多线程课程介绍
- 02-线程基础-线程和进程的区别?
- 03-线程基础-并行与并发的区别
- 04-线程基础-线程创建的方式-runnable与callable区别-start和run区别
- 05-线程基础-线程包括哪些状态,状态之间是如何变化的
- 06-线程基础-线程按顺序执行join、notify和notifyall区别
- 07-线程基础-java中wait和sleep方法的不同
- 08-线程基础-如何停止一个正在运行的线程
- 09-线程安全-synchronized关键字的底层原理-基础回答
- 10-线程安全-synchronized关键字的底层原理-进阶回答
- 11-线程安全-你谈谈 JMM(Java内存模型)
- 12-线程安全-你谈谈对CAS的理解
- 13-线程安全-请谈谈你对 volatile 的理解-可见性
- 14-线程安全-请谈谈你对 volatile 的理解-禁止指令重排序
- 15-线程安全-什么是AQS
- 16-线程安全-ReentrantLock的实现原理
- 17-线程安全-synchronized和Lock有什么区别
- 18-线程安全-死锁产生的条件以及死锁排查方案
- 19-线程安全-聊一下ConcurrentHashMap
- 20-线程安全-导致并发程序出现问题的根本原因是什么
- 21-线程池-说一下线程池的核心参数(线程池的执行原理知道嘛)
- 22-线程池-线程池中有哪些常见的阻塞队列
- 23-线程池-如何确定核心线程数
- 24-线程池-线程池的种类有哪些
- 25-线程池-为什么不建议用Executors创建线程池
- 26-使用场景-线程池使用场景(你们项目哪里用到了多线程)-ES数据批量导入
- 27-使用场景-线程池使用场景(你们项目哪里用到了多线程)-数据汇总
- 28-使用场景-线程池使用场景(你们项目哪里用到了多线程)-异步线程
- 29-使用场景-如何控制某个方法允许并发访问线程的数量
- 30-其他-谈谈你对ThreadLocal的理解
4-9 JVM篇

- 01-JVM介绍、运行流程
- 02-JVM组成-什么是程序计数器
- 03-JVM组成-你能给我详细的介绍下堆吗
- 04-JVM组成-什么是虚拟机栈
- 05-JVM组成-能不能介绍一下方法区
- 06-JVM组成-你听过直接内存吗
- 07-类加载器-什么是类加载器、什么是双亲委派
- 08-类加载器-说一下类装载的执行过程
- 09-垃圾回收-对象什么时候可以被垃圾器回收
- 10-垃圾回收-JVM垃圾回收算法有哪些?
- 11-垃圾回收-说一下JVM的分代回收
- 12-垃圾回收-说一下JVM有哪些垃圾回收器
- 13-垃圾回收-详细聊一下G1垃圾回收器
- 14-垃圾回收-强引用、软引用、弱引用、虚引用的区别
- 15-JVM实践-JVM调优参数可以在哪里设置参数值
- 16-JVM实践-用的JVM调优的参数都有哪些?
- 17-JVM实践-说一下JVM调优的工具
- 18-JVM实践-Java内存泄漏的排查思路
- 19-JVM实践-CPU飙高的排查方案及思路
4-10 设计模式篇

- 01-设计模式-课程介绍
- 02-设计模式-工厂设计模式-简单工厂模式
- 03-设计模式-工厂设计模式-工厂方法模式
- 04-设计模式-工厂设计模式-抽象工厂模式
- 05-设计模式-策略模式-概述及简单案例
- 06-设计模式-综合案例-策略模式和工厂方法模式
- 07-设计模式-责任链模式-概述及案例
- 08-技术场景-单点登录这块怎么实现的
- 09-技术场景-权限认证是如何实现的
- 10-技术场景-上传数据的安全性你们怎么控制
- 11-技术场景-遇到了哪些比较棘手的问题,怎么解决的
- 12-技术场景-你们项目中日志怎么采集的
- 13-技术场景-常见日志的命令
- 14-技术场景-生产问题怎么排查
- 15-技术场景-怎么快速定位系统的瓶颈
第五章 项目分享

5-1 信贷业务拓展

- 01走进信贷业务
- 02信贷业务梳理
- 03贷中业务流程
- 04贷后业务流程
- 05信贷业务总结
第六章 数据结构和算法

6-1 二分查找

- 001-二分查找-算法描述
- 002-二分查找-算法实现
- 003-二分查找-问题1-循环条件
- 004-二分查找-问题2-中间索引
- 005-二分查找-问题3-比较符号
- 006-二分查找-改动版
- 007-如何衡量算法好坏-1
- 008-如何衡量算法好坏-2
- 009-时间复杂度-大O表示法-1
- 010-时间复杂度-大O表示法-2
- 011-如何衡量算法好坏-3
- 012-二分查找-平衡版
- 013-二分查找-Java版
- 014-二分查找-LeftRightmost
- 015-二分查找-LeftRightmost-返回值
- 016-二分查找-LeftRightmost-应用
- 017-二分查找-e01-二分查找
- 017-二分查找-e02-搜索插入位置
- 017-二分查找-e03-搜索开始结束位置
6-2 动态数组

- 018-数组-概述
- 019-动态数组-介绍
- 020-动态数组-插入
- 021-动态数组-遍历
- 022-动态数组-删除
- 023-动态数组-扩容
- 024-二维数组
- 025-数组-缓存与局部性原理
6-3 链表

- 026-链表-概述
- 027-单向链表-addFirst
- 028-单向链表-遍历
- 029-单向链表-addLast
- 030-单向链表-get
- 031-单向链表-insert
- 032-单向链表-removeFirst
- 033-单向链表-remove
- 034-单向链表-带哨兵-1
- 035-单向链表-带哨兵-2
- 036-双向链表-带哨兵-1
- 037-双向链表-带哨兵-2
- 038-双向环形链表-带哨兵-1
- 039-双向环形链表-带哨兵-2
6-4 递归

- 041-递归-定义
- 042-递归-阶乘
- 043-递归-反向打印字符串
- 044-递归-e03-二分查找
- 044-递归-e04-冒泡排序1
- 044-递归-e04-冒泡排序2
- 044-递归-e05-插入排序1
- 044-递归-e05-插入排序2
- 045-多路递归-斐波那契
- 046-多路递归-斐波那契-时间复杂度
- 047-多路递归-斐波那契-兔子问题
- 048-多路递归-斐波那契-青蛙跳台阶
- 049-递归-优化-记忆法
- 050-递归-爆栈问题
- 051-递归-尾调用与尾递归
- 052-递归-尾递归避免爆栈
- 053-递归-主定理求时间复杂度-1
- 054-递归-主定理求时间复杂度-2
- 055-递归-展开求时间复杂度-1
- 056-递归-展开求时间复杂度-2
- 057-多路递归-e02-汉诺塔1
- 057-多路递归-e02-汉诺塔2
- 057-多路递归-e03-杨辉三角1
- 057-多路递归-e03-杨辉三角2
- 057-多路递归-e03-杨辉三角3
6-5 链表操作

- 058-链表-e01-反转单向链表1
- 058-链表-e01-反转单向链表2
- 058-链表-e01-反转单向链表3-递归
- 058-链表-e01-反转单向链表4
- 058-链表-e01-反转单向链表5
- 058-链表-e02-根据值删除节点1
- 058-链表-e02-根据值删除节点2-递归
- 058-链表-e03-删除倒数节点1-递归
- 058-链表-e03-删除倒数节点2
- 058-链表-e04-有序链表去重1
- 058-链表-e04-有序链表去重2-递归
- 058-链表-e05-有序链表去重1-递归
- 058-链表-e05-有序链表去重2
- 058-链表-e06-合并有序链表1
- 058-链表-e06-合并有序链表2
- 058-链表-e07-合并多个有序链表
- 058-链表-e08-查找链表中间节点
- 058-链表-e09-判断回文链表1
- 058-链表-e09-判断回文链表2
- 058-链表-e10-判环算法1
- 058-链表-e10-判环算法2
6-6 数组合并

- 059-数组-e01-合并有序数组1
- 059-数组-e01-合并有序数组2
6-7 队列

- 060-队列-链表实现-1
- 061-队列-链表实现-2
- 062-队列-环形数组实现-方法1-1
- 063-队列-环形数组实现-方法1-2
- 064-队列-环形数组实现-方法2
- 065-队列-环形数组实现-方法3-1
- 066-队列-环形数组实现-方法3-2
- 067-队列-环形数组实现-方法3-3
- 068-队列-环形数组实现-方法3-4
- 069-队列-e01-二叉树层序遍历1
- 069-队列-e01-二叉树层序遍历2
6-8 栈

- 070-栈-链表实现
- 071-栈-数组实现
- 072-栈-e01-有效的括号
- 072-栈-e02-后缀表达式求值
- 072-栈-e03-中缀表达式转后缀1
- 072-栈-e03-中缀表达式转后缀2
- 072-栈-e03-中缀表达式转后缀3
- 072-栈-e04-双栈模拟队列
- 072-栈-e05-单队列模拟栈
6-9 双端队列

- 073-双端队列-链表实现-1
- 074-双端队列-链表实现-2
- 075-双端队列-数组实现-1
- 076-双端队列-数组实现-2
- 077-双端队列-数组实现-3
- 078-双端队列-e01-二叉树Z字层序遍历
6-10 优先级队列

- 079-优先级队列-无序数组实现
- 080-优先级队列-有序数组实现
- 081-优先级队列-堆实现-1
- 082-优先级队列-堆实现-2
- 083-优先级队列-堆实现-3
- 084-优先级队列-e01-合并多个有序链表1
- 084-优先级队列-e01-合并多个有序链表2
6-11 阻塞队列

- 085-阻塞队列-问题提出
- 086-阻塞队列-单锁实现-1
- 087-阻塞队列-单锁实现-2
- 088-阻塞队列-单锁实现-3
- 089-阻塞队列-单锁实现-4
- 090-阻塞队列-单锁实现-5
- 091-阻塞队列-双锁实现-1
- 092-阻塞队列-双锁实现-2
- 093-阻塞队列-双锁实现-3
- 094-阻塞队列-双锁实现-4
- 095-阻塞队列-双锁实现-5
6-12 堆

- 096-堆-heapify-1
- 097-堆-heapify-2
- 098-堆-heapify-3
- 099-堆-增-删-替换
- 100-堆-e01-堆排序
- 100-堆-e02-求数组第k大元素
- 100-堆-e03-求数据流第k大元素
- 100-堆-e04-求数据流中位数1
- 100-堆-e04-求数据流中位数2
- 100-堆-e04-求数据流中位数3
6-13 二叉树

- 101-二叉树-概述
- 102-二叉树-深度优先遍历
- 103-二叉树-前中后遍历-递归实现
- 104-二叉树-前中后遍历-非递归1
- 105-二叉树-前中后遍历-非递归2
- 106-二叉树-前中后遍历-非递归3
- 107-二叉树-前中后遍历-非递归4
- 108-二叉树-e04-对称二叉树
- 109-二叉树-e05-最大深度-解法1
- 110-二叉树-e05-最大深度-解法2
- 111-二叉树-e05-最大深度-解法3
- 112-二叉树-e06-最小深度
- 113-二叉树-e07-翻转二叉树
- 114-二叉树-e08-根据后缀表达式建树
- 115-二叉树-e09-根据前中遍历结果建树
- 116-二叉树-e10-根据中后遍历结果建树
6-14 二叉搜索树

- 117-二叉搜索树-概述
- 118-二叉搜索树-get
- 119-二叉搜索树-泛型key
- 120-二叉搜索树-min-max
- 121-二叉搜索树-put
- 122-二叉搜索树-前任后任-1
- 123-二叉搜索树-前任后任-2
- 124-二叉搜索树-删除-1
- 125-二叉搜索树-删除-2
- 126-二叉搜索树-删除-3
- 127-二叉搜索树-删除-递归-1
- 128-二叉搜索树-删除-递归-2
- 129-二叉搜索树-范围查询
- 130-二叉搜索树-e01~e03-删增查
- 131-二叉搜索树-e04-判断合法-中序非递归
- 132-二叉搜索树-e04-判断合法-中序递归1
- 133-二叉搜索树-e04-判断合法-中序递归2
- 134-二叉搜索树-e04-判断合法-上下界
- 135-二叉搜索树-e05-求范围和
- 136-二叉搜索树-e06-根据前序遍历结果建树1
- 137-二叉搜索树-e06-根据前序遍历结果建树2
- 138-二叉搜索树-e06-根据前序遍历结果建树3
- 139-二叉搜索树-e07-最近公共祖先
6-15 avl树

- 140-avl树-概述
- 141-avl树-高度和平衡因子
- 142-avl树-四种失衡情况
- 143-avl树-旋转-1
- 144-avl树-旋转-2
- 145-avl树-balance
- 146-avl树-put
- 147-avl树-remove
6-16 红黑树

- 148-红黑树-概述
- 149-红黑树-工具方法
- 150-红黑树-旋转
- 151-红黑树-put-case1-2
- 152-红黑树-put-case3
- 153-红黑树-put-case4
- 154-红黑树-remove
- 155-红黑树-remove-case0-1
- 156-红黑树-remove-case2
- 157-红黑树-remove-case3
- 158-红黑树-remove-case4
- 159-红黑树-remove-case5
- 160-红黑树-remove-演示
6-17 B树

- 161-B树-历史
- 162-B树-特性
- 163-B树-节点类1
- 164-B树-节点类2
- 165-B树-contains
- 166-B树-put
- 167-B树-split-分析
- 168-B树-split-实现
- 169-B树-split-非叶子和根
- 170-B树-split-测试
- 171-B树-put结合split
- 172-B树-remove-概述
- 173-B树-remove-搭架子
- 174-B树-remove-case1~4
- 175-B树-remove-case5~6分析
- 176-B树-remove-case5-旋转
- 177-B树-remove-case5-合并
- 178-B树-remove-case6
- 179-B树-remove-演示1
- 180-B树-remove-演示2
6-18 哈希表

- 181-哈希表-概述
- 182-哈希表-hash码映射索引
- 183-哈希表-get-put
- 184-哈希表-remove
- 185-哈希表-resize-1
- 186-哈希表-resize-2
- 187-哈希表-resize-3
- 188-哈希表-问1-解释按位与
- 189-哈希表-问2-解释拆分
- 190-哈希算法-概述
- 191-哈希算法-Object.hashCode
- 192-哈希算法-String.hashCode
- 193-哈希算法-冲突测试
- 194-哈希算法-MurmurHash
- 195-哈希表-设计思考
- 196-哈希表-e01-两数之和
- 197-哈希表-e02-最长不重复子串-1
- 198-哈希表-e02-最长不重复子串-2
- 199-哈希表-e03-字母异位词分组-解1
- 200-哈希表-e03-字母异位词分组-解2
- 201-哈希表-e04-判断有没有重复数字
- 202-哈希表-e05-找到不重复数字
- 203-哈希表-e06-判断字母异位词
- 204-哈希表-e07-第一个不重复字符
- 205-哈希表-e08-出现次数最多的单词-1
- 206-哈希表-e08-出现次数最多的单词-2
6-19 排序算法

- 207-排序算法-冒泡排序
- 208-排序算法-选择排序
- 209-排序算法-堆排序
- 210-排序算法-插入排序
- 211-排序算法-希尔排序
- 212-排序算法-归并排序-自顶至下
- 213-排序算法-归并排序-自下至上
- 214-排序算法-归并加插入
- 215-排序算法-单边快排
- 216-排序算法-双边快排
- 217-排序算法-快排-随机基准点
- 218-排序算法-快排-处理重复
- 219-排序算法-计数排序
- 220-排序算法-计数排序-改进
- 221-排序算法-桶排序
- 222-排序算法-桶排序-改进
- 223-排序算法-基数排序1
- 224-排序算法-基数排序2
- 225-排序算法-java排序
- 226-排序-e01-根据另一个数组次序排序
- 227-排序-e02-根据出现频率排序
- 228-排序-e03-最大间距-解法1(超出内存限制)
- 229-排序-e03-最大间距-解法2
- 230-排序-e03-最大间距-解法3
- 231-排序-e03-最大间距-解法4
6-20 图

- 232-图-基本概念
- 233-图-表示方式
- 234-图-Java表示
- 235-图-DFS
- 236-图-BFS
- 237-图-拓扑排序
- 238-图-拓扑排序-检测环
- 239-图-拓扑排序-DFS
- 240-图-Dijkstra-算法描述
- 241-图-Dijkstra-算法实现
- 242-图-Dijkstra-改进-记录路径
- 243-图-Dijkstra-改进-优先队列
- 244-图-Bellman-Ford-算法描述
- 245-图-Bellman-Ford-算法实现
- 246-图-Floyd-Warshall-算法描述
- 247-图-Floyd-Warshall-算法实现-1
- 248-图-Floyd-Warshall-算法实现-2
- 249-图-Floyd-Warshall-算法实现-3
- 250-图-Floyd-Warshall-算法实现-4
- 251-图-最小生成树-Prim
- 252-图-最小生成树-Kruskal
- 253-图-并查集-1
- 254-图-并查集-2
- 255-图-并查集-路径压缩
- 256-图-并查集-UnionBySize
6-21 贪心算法

- 257-贪心算法-介绍
- 258-零钱兑换II-递归-实现
- 259-零钱兑换II-递归-递归分析
- 260-零钱兑换II-递归-所有组合
- 261-零钱兑换II-递归-顺序优化
- 262-零钱兑换-递归
- 263-零钱兑换-贪心-1
- 264-零钱兑换-贪心-2
- 265-Huffman-Tree
- 266-Huffman-Tree-分析
- 267-Huffman-Tree-统计频次
- 268-Huffman-Tree-构建树
- 269-Huffman-Tree-记录编码
- 270-Huffman-Tree-编解码
- 271-活动选择问题-分析
- 272-活动选择问题-贪心
- 273-分数背包问题-贪心
- 274-0-1背包问题-贪心
6-22 动态规划

- 275-斐波那契-动态规划
- 276-斐波那契-动态规划-降维
- 277-Bellman-Ford-动态规划-分析
- 278-Bellman-Ford-动态规划-实现1
- 279-Bellman-Ford-动态规划-实现2
- 280-不同路径-Leetcode62-动态规划-分析
- 281-不同路径-Leetcode62-动态规划-实现
- 282-0-1背包问题-动态规划-分析1
- 283-0-1背包问题-动态规划-分析2
- 284-0-1背包问题-动态规划-实现
- 285-0-1背包问题-动态规划-降维
- 286-完全背包问题-动态规划-分析
- 287-完全背包问题-动态规划-实现
- 288-零钱兑换-Leetcode322-动态规划-分析
- 289-零钱兑换-Leetcode322-动态规划-实现
- 290-零钱兑换-Leetcode322-动态规划-降维
- 291-零钱兑换II-Leetcode518-动态规划-分析
- 292-零钱兑换II-Leetcode518-动态规划-实现
- 293-钢条切割-动态规划-分析
- 294-钢条切割-动态规划-实现
- 295-最长公共子串-动态规划
- 296-最长公共子序列-Leetcode1143-动态规划-分析
- 297-最长公共子序列-Leetcode1143-动态规划-实现
- 298-两个字符串删除-Leetcode583
- 299-最长递增子序列-Leetcode300-分析
- 300-最长递增子序列-Leetcode300-实现
- 301-Catalan数-分析
- 302-Catalan数-实现
- 303-Catalan数-应用-出栈总数
- 304-Catalan数-括号生成-Leetcode22-1
- 305-Catalan数-括号生成-Leetcode22-2
- 306-打家劫舍-Leetcode198
- 307-旅行商问题-分析
- 308-旅行商问题-动态规划-分析
- 309-旅行商问题-动态规划-实现-1
- 310-旅行商问题-动态规划-实现-2
- 311-旅行商问题-动态规划-实现-3
6-23 分治法

- 312-分治-概述
- 313-快速选择算法-分治
- 314-快速选择算法-数组第k大数-Leetcode215
- 315-快速选择算法-数组中位数
- 316-快速幂-分治
- 317-快速幂-Leetcode50
- 318-平方根整数部分-Leetcode69-1
- 319-平方根整数部分-Leetcode69-2
- 320-至少k个重复字符的最长子串-Leetcode395-分析
- 321-至少k个重复字符的最长子串-Leetcode395-实现
6-24 回溯法

- 322-回溯-概述
- 323-全排列-Leetcode46-分析
- 324-全排列-Leetcode46-实现
- 325-全排列无重复-Leetcode47
- 326-组合-Leetcode77-分析
- 327-组合-Leetcode77-实现
- 328-组合-Leetcode77-剪枝
- 329-组合之和-Leetcode39
- 330-组合之和-Leetcode40
- 331-组合之和-Leetcode216
- 332-N皇后-Leetcode51-1
- 333-N皇后-Leetcode51-2
- 334-解数独-Leetcode37-1
- 335-解数独-Leetcode37-2
- 336-两数之和-Leetcode167
- 337-三数之和-Leetcode15-1
- 338-三数之和-Leetcode15-2
- 339-三数之和-Leetcode15-3
- 340-四数之和-Leetcode18
- 341-盛水最多容器-Leetcode11
- 342-滑动窗口最大值-Leetcode239-1
- 343-滑动窗口最大值-Leetcode239-2
- 344-接雨水-Leetcode42-1
- 345-接雨水-Leetcode42-2
- 346-字符串匹配-bf-Leetcode28
- 347-字符串匹配-kmp-Leetcode28
- 348-字符串匹配-kmp-Leetcode28
- 349-字符串匹配-lps数组-Leetcode28
- 350-最长公共前缀-Leetcode14
- 351-最长回文子串-Leetcode5-1
- 352-最长回文子串-Leetcode5-2
- 353-最小覆盖子串-Leetcode76-1
- 354-最小覆盖子串-Leetcode76-2
- 355-设计LRU缓存-Leetcode-146
- 356-设计LFU缓存-Leetcode-460
- 357-randomLevel-Leetcode-1206
- 358-设计跳表-Leetcode-1206
- 359-设计最小栈-Leetcode-155
- 360-设计短网址-Leetcode-535
- 361-设计推特-Leetcode-355
- 362-股票系列问题-Leetcode-121
- 363-股票系列问题-Leetcode-122
- 364-股票系列问题-Leetcode-714
- 365-股票系列问题-Leetcode-309
- 366-股票系列问题-Leetcode-123
- 367-股票系列问题-Leetcode-188
阶段十三 SpringAI+DeepSeek大模型应用开发
展开第一章 SpringAI+DeepSeek大模型应用开发

1-1 认识AI

- 课程介绍
- 认识AI和大模型
1-2 大模型应用开发

- 大模型应用开发-模型部署方案对比
- 大模型应用开发-模型部署-云服务
- 大模型应用开发-模型部署-本地部署
- 大模型应用开发-调用大模型
- 大模型应用开发-什么是大模型应用
- 大模型应用开发-大模型应用开发技术方案
1-3 SpringAI

- SpringAI-课程安排
- SpringAI-对话机器人-快速入门
- SpringAI-对话机器人-会话日志
- SpringAI-对话机器人-对接前端
- SpringAI-对话机器人-会话记忆功能
- SpringAI-对话机器人-会话历史功能
- SpringAI-哄哄模拟器-提示词工程
- SpringAI-哄哄模拟器-代码实现
- SpringAI-智能客服-需求和思路分析
- SpringAI-智能客服-编写Tools
- SpringAI-智能客服-FunctionCalling
- SpringAI-智能客服-解决百炼平台兼容性问题
- SpringAI-ChatPDF-向量模型
- SpringAI-ChatPDF-向量数据库和PDF处理
- SpringAI-ChatGPT-读取PDF和向量搜索
- SpringAI-ChatGPT-实现ChatGPT应用
- SpringAI-多模态会话
- 完结撒花
阶段十四 AIGC应用与智能体开发
展开第一章 AIGC应用与智能体开发

1-1 day01

- 课程背景介绍
- 课程路线和架构
- 导入虚拟机
- 安装ollama
- 运行通义大模型
- 对话指令01
- 对话指令02
- 对话指令03-set
- 对话指令04-set+clear
- 对话指令05-load
- 对话指令06-save
- 客户端指令01-run
- 客户端指令02
- 开通远程访问端口
- Ollama接口访问1
- 导入lobechat镜像
- lobeChat运行和集成ollama
1-2 day02

- 炫酷皮肤安装
- LobeChat助手剖析
- 安装MaxKB
- 重新安装MaxKB干净环境
- MaxKB集成Ollama
- 通过知识库提升大模型回复精准度
- 剖析大模型回复精准的实现原理
- 通过QA数据训练知识库
- MaxKB远程API
- 安装Continue
- 配置Continue生效并提示代码
- 第二章学习介绍
- 扩散模型介绍
- StableDiffusion基本结构
- StableDiffusion深度原理1
- StableDiffusion深度原理2
- Comfyui介绍清理磁盘空间
- Comfyui安装并验证安装
- 安装Manager插件
1-3 day03

- day02回顾
- 按照汉化软件
- 生成第一张图片
- 默认流程中的节点详解
- 绘制文生图图片放大
- 老照片修复案例
- 图生图案例
- 图生图之局部重绘案例
- 导入Comfyui API文档
- 从0到1创建SpringBoot工程
- Retrofit入门
- 开通Retrofit日志
- Http超时时间详解
- 导入Comfyui的声明API类
- 修改导入后的代码问题
- day03复盘
1-4 day04

- day03回顾
- 封装Comfyui的WS客户端
- 星图项目介绍
- 星图docker-compse开发环境搭建
- 修改dev环境数据库密码
- 登录功能需求和创建用户表
- 登录功能实现基本代码01
- 登录业务逻辑分析和实现02
- 登录业务逻辑分析和实现03
- 登录业务逻辑分析和实现04
- 导入前端项目并测试登录接口
- Day04复盘
- 修正nrm全局安装
1-5 day05

- day04回顾
- 文生图接口实现思路
- 用户请求拦截实现
- 用户拦截器测试
- 通过Ollama实现翻译接口01
- 封装Ollama翻译Service
- 通过Freemarker来替换参数
- 封装存储到Redis中的对象
- 如何在Redis中存储封装好的对象
- 封装把对象存入Redis的Service
- 文生图接口实现并测试
- day05复盘
1-6 day06

- 通过SpringTask发送任务到Comfyui
- 通过分布式锁来解决集群任务问题
- WS服务端需求方案以及封装WS服务端代码
- 复盘文生图思路
- 封装Websocket推送Service
- 推送进度消息给前端
- 推送生图结果给前端——需要处理图片结果
- 保存生成的结果图片
- 推送生图错误消息
- 处理队列状态消息-分布式信号量
- 处理积分划扣
- 自动填充和乐观锁
- 文生图流程总结
- day06复盘