目〓〓录
第1章搭建开发平台

1.1Java Web概述

1.2C/S与B/S模式

1.2.1C/S模式

1.2.2B/S模式

1.3响应式开发概述

1.3.1响应式技术简介

1.3.2响应式流规范

1.3.3前端响应式技术

1.3.4后端响应式技术

1.4搭建开发环境

1.4.1安装Temurin JDK

1.4.2安装PostgreSQL数据库

1.4.3使用IntelliJ IDEA

1.5Gradle自动化构建工具

1.5.1Gradle概述

1.5.2Gradle核心概念

1.5.3构建和配置

1.6创建Spring响应式项目

第2章RxJS响应式扩展库

2.1RxJS概述

2.1.1RxJS简介

2.1.2引入RxJS支持库

2.2RxJS响应式处理基础

2.2.1可观察对象

2.2.2观察者

2.2.3订阅

2.2.4主题

2.3RxJS常用操作符

2.3.1管道pipe

2.3.2对象创建函数

2.3.3工具函数

2.3.4过滤函数

2.3.5转换函数

2.3.6事件处理函数fromEvent()

2.3.7合并函数

2.3.8扫描函数scan()

2.3.9定时缓冲bufferTime()

2.3.10重试函数retry()

2.3.11异步请求函数ajax()

2.3.12资源请求函数fromFetch()

2.3.13通信函数webSocket()

2.4场景应用实战

2.4.1多任务处理进度条

2.4.2动态增删图书

第3章Vue.js渐进式框架

3.1Vue概述

3.2Vue应用基础

3.2.1创建Vue应用

3.2.2生命周期

3.2.3组合式函数setup()

3.2.4插值

3.2.5响应性函数

3.2.6解构

3.3基础语法

3.3.1模板语法

3.3.2计算属性computed

3.3.3侦听watch

3.3.4表单域的数据绑定

3.3.5条件和列表渲染

3.3.6对象组件化

3.3.7插槽

3.3.8事件绑定和触发

3.3.9自定义元素

3.3.10自定义指令和插件

3.4渲染函数

3.4.1h()函数

3.4.2render()函数

3.5使用组件

3.5.1组件定义及动态化

3.5.2异步组件

3.5.3数据提供和注入

3.6单文件组件

3.6.1基本结构形式

3.6.2样式选择器

3.6.3使用vue3sfcloader导入SFC

3.7组合式语法糖

3.7.1基本语法

3.7.2属性声明和事件声明

3.7.3属性暴露

3.8使用聚合器封装内容

3.9深入__vue_app__和_vnode

3.9.1__vue_app__

3.9.2_vnode 

3.9.3实战组件的动态注册和卸载

3.10状态管理

3.10.1Pinia简介

3.10.2数据状态State

3.10.3计算属性Getter

3.10.4数据更改Action

3.10.5项目中的应用方式

3.11场景应用实战

3.11.1下拉选择框联动

3.11.2动态增删图书

第4章Spring响应式开发

4.1RESTful概述

4.1.1REST简介

4.1.2RESTful要义

4.1.3RESTful请求风格

4.2Spring响应式概述

4.2.1Spring Boot简介

4.2.2创建Spring Boot项目

4.2.3Spring Boot入口类

4.2.4Spring Boot常用注解

4.3Spring Boot场景实战

4.3.1前后端互传字符串

4.3.2前后端互传对象

4.3.3模拟数据采集

4.4Reactor响应式处理技术

4.4.1Project Reactor概述

4.4.2Reactor基本思想

4.4.3Reactor核心包publisher

4.4.4单量MonoT

4.4.5通量FluxT

4.5响应式操作符

4.5.1订阅subscribe

4.5.2多播ConnectableFlux

4.5.3映射map

4.5.4扁平化flatMap

4.5.5组合操作符

4.5.6副业处理doOnNext

4.5.7过滤filter和条件操作takeWhile

4.5.8扫描scan

4.5.9转换transform

4.5.10分组groupBy

4.5.11缓冲buffer和开窗window

4.5.12调度器publishOn和subscribeOn

4.5.13重试(retry)和重复(repeat)

4.6并行通量ParallelFlux

4.7触发器Sinks

4.8冷数据流和热数据流

4.9背压处理

4.10Spring WebFlux响应式基础

4.10.1Spring WebFlux简介

4.10.2WebFlux应用的入口类

4.10.3WebFluxConfigurer配置接口

4.10.4application配置文件

4.10.5HandlerFilterFunction事件流过滤

4.10.6HandlerFunction业务逻辑处理

4.10.7RouterFunction函数式路由

4.10.8WebFilter过滤接口

4.10.9WebClient非阻塞跨服务通信

4.10.10Multipart Data多域数据

4.10.11WebSocketHandler通信处理接口

4.11响应式数据库连接R2DBC

4.11.1R2DBC简介

4.11.2加入R2DBC依赖并配置连接属性

4.11.3响应式R2dbcRepository

4.12场景应用实战

4.12.1基于Flux的模拟数据采集

4.12.2多域数据的传递

第5章构建多模块项目

5.1教务辅助管理系统项目概述

5.1.1系统功能简介

5.1.2系统技术架构

5.1.3系统的复合构建结构

5.2创建响应式根项目TAMS

5.3添加公共项目appcommon

5.3.1服务端构建脚本server.common.gradle

5.3.2前端构建脚本view.common.gradle

5.3.3gRPC构建脚本reactor.grpc.gradle

5.4添加前端项目appview

5.4.1新建appview

5.4.2添加子模块home

5.4.3添加子模块public

5.4.4添加其他子模块

5.5添加服务端项目appserver

5.5.1新建appserver

5.5.2添加子模块appboot

5.5.3添加其他子模块

5.6最终的配置文件settings.gradle

5.7项目打包后的模块结构

第6章主页的实现

6.1功能需求及界面设计

6.2后端服务模块

6.2.1模块的整体结构

6.2.2配置build.gradle构建脚本

6.2.3创建项目入口主程序

6.2.4设置application.yaml

6.2.5定义函数式路由映射Bean

6.3前端视图模块

6.3.1整体结构的设计

6.3.2主页home.html

6.3.3主页脚本home.js

6.3.4模块加载器sfcloader.js

6.3.5页面主体组件home.index.vue

6.3.6主页布局组件home.layout.vue

6.3.7标题及消息显示组件home.header.vue

6.3.8导航组件home.menu.vue

6.3.9插件app.plugins.js

6.4状态管理

6.4.1states.js定义状态量

6.4.2actions.js更改状态数据

6.4.3getters.js计算函数

6.4.4index.js创建状态实例

6.5通用进度提示组件loading.vue

第7章用户登录

7.1功能需求及界面设计

7.2相关数据表

7.2.1表结构与SQL语句

7.2.2构建配置和实体类

7.3使用JWT令牌

7.3.1JWT令牌简介

7.3.2使用Nimbus JOSE+JWT处理令牌

7.3.3创建Assistant令牌生成和校验工具类

7.4后端服务模块

7.4.1模块的整体结构

7.4.2修改build.gradle构建脚本

7.4.3配置applicationusers.yaml并导入appboot

7.4.4DTO类

7.4.5编写登录服务

7.4.6定义函数式路由映射Bean

7.5前端视图模块

7.5.1整体结构的设计

7.5.2使用聚合器封装业务逻辑

7.5.3实现链式登录业务流

7.5.4编写主文件组件

7.5.5抽取界面的共性化

7.5.6创建用户登录UI组件

7.5.7修改主页导航组件

7.5.8登录试错的锁屏处理

第8章用户注册

8.1功能需求及界面设计

8.2后端服务模块

8.2.1添加瞬态属性

8.2.2向UsersHandler组件添加注册方法

8.2.3配置用户注册的路由地址

8.2.4修改路由Bean映射注册处理

8.2.5实现BeforeConvertCallback接口

8.3前端视图模块

8.3.1整体结构的设计

8.3.2向聚合器中添加注册函数

8.3.3实现链式注册业务流

8.3.4主文件组件user.regist.index.vue

8.3.5UI组件user.regist.ui.vue

8.3.6修改主页导航组件

第9章消息推送

9.1功能需求及界面设计

9.2相关数据表

9.2.1表结构与SQL语句

9.2.2实体类

9.3后端服务模块

9.3.1模块的整体结构

9.3.2修改build.gradle构建脚本

9.3.3配置applicationnote.yaml并导入appboot

9.3.4DTO类

9.3.5配置推送消息的WebClient和Sinks.Many

9.3.6定义消息服务接口

9.3.7基于退避策略推送消息

9.3.8定义函数式路由映射Bean

9.4前端视图模块

9.4.1使用EventSource订阅消息流数据

9.4.2用户登录成功时订阅消息

第10章学院风采

10.1功能需求及界面设计

10.2后端服务模块

10.2.1模块的整体结构

10.2.2修改build.gradle构建脚本

10.2.3配置applicationcollege.yaml并导入appboot

10.2.4视频流数据的分段响应

10.2.5定义函数式路由映射Bean

10.3前端视图模块

10.3.1整体结构的设计

10.3.2创建学院概述SFC组件

10.3.3主文件组件

10.3.4学院列表组件

10.3.5学院内容组件

10.3.6组件聚合器

10.3.7修改主页导航组件

第11章学生查询

11.1功能需求及界面设计

11.2相关数据表

11.2.1表结构与SQL语句

11.2.2实体类

11.3后端服务模块

11.3.1模块的整体结构

11.3.2修改build.gradle构建脚本

11.3.3配置applicationstudent.yaml并导入appboot

11.3.4DTO类

11.3.5数据访问接口类

11.4整合实时流数据处理平台Hazelcast

11.4.1Hazelcast简介

11.4.2Hazelcast应用基础

11.4.3Hazelcast配置类

11.4.4数据查询服务组件

11.5利用JWT令牌验证有效性

11.5.1基于HandlerFilterFunction的验证组件

11.5.2定义函数式路由映射Bean

11.6前端视图模块

11.6.1整体结构的设计

11.6.2前端主文件

11.6.3利用ce.vue定制化查询

11.6.4使用聚合器管理组件

11.6.5查询组件

11.6.6处理键盘输入事件

11.6.7实现链式查询业务流

11.6.8数据挂载组件

11.6.9修改主页导航组件

11.7测试分布式数据共享效果

第12章招生一览

12.1功能需求及界面设计

12.2相关数据表

12.2.1表结构与SQL语句

12.2.2实体类

12.3通过远程服务获取招生数据

12.3.1gRPC简介

12.3.2Protobuf协议

12.3.3.proto文件简介

12.3.4使用响应式gRPC

12.4创建远程服务项目Enroll

12.4.1项目的整体结构

12.4.2项目的构建脚本及配置脚本

12.4.3配置application.yaml

12.4.4创建proto文件

12.4.5编写gRPC服务类

12.4.6启动gRPC服务器

12.5TAMS项目的后端服务模块

12.5.1模块的整体结构

12.5.2修改build.gradle构建脚本

12.5.3配置applicationenroll.yaml并导入appboot

12.5.4DTO类和proto文件

12.5.5编写gRPC客户端组件

12.5.6添加函数式路由映射Bean

12.6TAMS项目的前端视图模块

12.6.1整体结构的设计

12.6.2数据的图形可视化

12.6.3使用Apache ECharts构建图形

12.6.4前端主文件

12.6.5学院专业下拉框联动组件

12.6.6招生饼图组件

12.6.7获取数据构建图形

12.6.8设置图形修饰项

12.6.9修改主页导航组件

第13章资料上传

13.1功能需求及界面设计

13.2后端服务模块

13.2.1模块的整体结构

13.2.2修改build.gradle构建脚本

13.2.3配置applicationfile.yaml并导入appboot

13.2.4编写文件上传的服务组件

13.2.5定义函数式路由映射Bean

13.3前端视图模块

13.3.1整体结构的设计

13.3.2自定义文件拖放指令

13.3.3编写前端主文件

13.3.4实现链式上传业务流

13.3.5修改主页导航组件

第14章畅论空间

14.1功能需求及界面设计

14.2消息服务概述

14.2.1消息服务简介

14.2.2主要消息服务模式

14.3使用Apache Kafka作为消息服务器

14.3.1Apache Kafka简介

14.3.2下载并启用Kafka服务器

14.3.3KafkaTemplate模板

14.3.4生产者Producer和消费者Consumer

14.3.5Kafka响应式消息发送器和接收器

14.4后端服务模块的基础处理

14.4.1模块的整体结构

14.4.2配置applicationchat.yaml并导入appboot

14.4.3修改build.gradle构建脚本

14.4.4编写MessageDTO类

14.5创建WebSocket服务

14.5.1实现WebSocketHandler接口

14.5.2从Kafka拉取最近的若干条消息

14.5.3发送消息到Kafka

14.5.4群发给其他用户

14.6配置WebSocket服务

14.6.1设置响应标头中的SecWebSocketProtocol

14.6.2将前端请求映射到服务端点

14.7前端视图模块

14.7.1整体结构的设计

14.7.2前端主文件

14.7.3聊天组件weChat

14.7.4加载外部CSS到shadowRoot

14.7.5实现WebSocket监听

14.7.6修改主页导航组件

第15章项目的发布

15.1发布为命令行运行模式

15.2应用容器引擎Docker 

15.2.1Docker简介

15.2.2使用Docker CLI

15.2.3自动镜像创建工具Dockerfile

15.3云端管理敏感数据

15.3.1Spring Cloud Vault简介

15.3.2生成安全证书和私钥文件

15.3.3编写Vault配置文件

15.3.4启动Vault服务

15.3.5配置项目的数据库连接信息

15.3.6配置项目的spring.cloud.vault

15.3.7测试Vault运行情况

15.4发布前的准备工作

15.4.1在BOOTINF下存放上传文件

15.4.2处理TAMS项目

15.4.3处理远程服务项目Enroll

15.5将项目发布到Docker