目录 第1章Java Web开发基础 1.1Java Web概述 1.2C/S与B/S模式 1.3搭建开发环境 1.3.1安装Java SE JDK 1.3.2安装Apache Tomcat 1.3.3安装PostgreSQL数据库 1.3.4使用IntelliJ IDEA 1.4创建Maven Web站点 1.4.1Maven简介 1.4.2修改资源仓库的镜像地址 1.4.3创建Maven WebApp站点项目 1.4.4修改项目编译版本 1.5场景任务挑战——配置自己的站点 第2章HTML基础 2.1HTML简介 2.2HTML文档基本结构 2.3头部和主体标签 2.3.1头部标签head 2.3.2主体标签body 2.4其他常用标签 2.4.1链接分段与换行 2.4.2表格和列表 2.4.3层标签和组合标签 2.4.4图像和媒体 2.4.5对话框 2.4.6表单及表单元素 2.4.7模板 2.4.8内联框架 2.5事件 2.6场景应用示例——显示字符映射表图标 2.6.1应用需求 2.6.2实现思路 2.6.3具体实现 2.7场景任务挑战——注册与叠加的层 第3章CSS(层叠样式表) 3.1CSS简介 3.2CSS基础 3.2.1CSS基本格式 3.2.2应用方式 3.3CSS样式设置 3.3.1文本 3.3.2背景 3.3.3边框和边距 3.3.4定位溢出和浮动 3.3.5伪类和伪元素 3.3.6多列 3.3.7动画 3.4场景应用示例——功能导航条 3.4.1应用需求 3.4.2实现思路 3.4.3CSS代码 3.5场景任务挑战——导航菜单 第4章JavaScript脚本语言 4.1JavaScript简介 4.2JavaScript的使用 4.2.1页面直接使用 4.2.2使用脚本文件 4.3变量和常量 4.3.1使用var和let声明变量 4.3.2使用const声明常量 4.4基本数据类型 4.5函数 4.5.1使用function定义函数 4.5.2使用箭头函数 4.6数组 4.7对象 4.7.1对象概述 4.7.2当前对象this 4.7.3窗口对象Window 4.7.4文档对象Document 4.7.5事件状态Event 4.7.6页面定位Location 4.7.7样式处理Style 4.7.8对象包装器Object 4.8异步操作Promise 4.8.1Promise对象 4.8.2async和await 4.9控制语句 4.9.1导入(import)和导出(export) 4.9.2条件判断if...else 4.9.3多条件分支switch 4.9.4循环操作for 4.9.5do...while和while语句 4.9.6try...catch...finally语句 4.10表单数据FormData 4.10.1通过表单form创建 4.10.2用代码生成FormData 4.10.3处理文件数据 4.11使用JSON 4.11.1JSON简介 4.11.2JSON基本语法 4.11.3解析为JSON对象 4.11.4转换为JSON字符串 4.12场景应用示例——动态增删书目 4.12.1应用需求 4.12.2处理思路 4.12.3实现HTML页面 4.12.4编写JS脚本文件 4.13场景任务挑战——勾选删除 第5章JSP基础 5.1JSP概述 5.1.1JSP简介 5.1.2JSP基本页面结构 5.1.3配置Tomcat依赖 5.2JSP基本语法 5.2.1程序段 5.2.2表达式 5.2.3JSP中的注释 5.3JSP内置对象 5.3.1out 5.3.2request 5.3.3response 5.3.4session 5.3.5application 5.4使用Servlet 5.4.1Servlet简介 5.4.2Servlet生命周期 5.4.3doGet()和doPost()方法 5.4.4加入Servlet依赖 5.4.5创建Servlet 5.5EL表达式语言 5.5.1EL概述 5.5.2加入JSTL依赖 5.5.3内置对象 5.5.4条件输出 5.5.5循环输出 5.6监听器 5.6.1监听器类型 5.6.2基于监听器的在线用户统计 5.7与数据库交互 5.7.1创建users表并加入数据库依赖 5.7.2数据库连接 5.7.3JDBC应用 5.8场景应用示例 5.8.1文件上传 5.8.2在页面中显示Excel表格 5.8.3用PDF显示古诗 5.9场景任务挑战——有背景图的PDF古诗 第6章MVC设计模式 6.1MVC概述 6.1.1传统JSP开发模式 6.1.2MVC原理 6.1.3MVC的优缺点 6.2MVC实现过程 6.3场景应用示例——用户注册 6.3.1应用需求 6.3.2处理思路 6.3.3模型层 6.3.4控制器层 6.3.5视图层 6.4场景任务挑战——学生信息查询 第7章数据库连接池 7.1连接池概述 7.1.1连接池基本原理 7.1.2常见连接池产品 7.1.3Tomcat连接池示例 7.2HikariCP连接池 7.2.1HikariCP简介 7.2.2加入HikariCP依赖 7.2.3配置HikariCP连接池 7.2.4查看HikariCP活动情况 7.3场景应用示例——优化HikariCP使用 7.3.1应用需求 7.3.2创建监听器类AppService 7.3.3连接池的构建和关闭 7.3.4修改DBFactory类 7.4场景任务挑战——动态配置HikariCP 第8章jQuery前端开发 8.1jQuery概述 8.1.1jQuery简介 8.1.2jQuery的使用 8.1.3jQuery基础语法 8.2jQuery选择器 8.2.1元素选择器 8.2.2属性选择器 8.2.3CSS选择器 8.3jQuery操作 8.3.1元素操作 8.3.2属性操作 8.3.3操作CSS类 8.3.4遍历操作 8.3.5事件函数 8.4jQuery动画 8.5与服务器交互 8.5.1用Jackson格式化数据 8.5.2$.ajax 8.5.3$.get和$.getJSON 8.5.4$.post 8.6场景应用示例 8.6.1下拉选择框联动 8.6.2学生信息查询 8.7场景任务挑战——动态增删书目 第9章Spring Boot开发基础 9.1RESTful概述 9.1.1REST简介 9.1.2RESTful要义 9.1.3RESTful请求风格 9.2Spring Boot概述 9.2.1Spring Boot简介 9.2.2创建Spring Web MVC项目 9.2.3Spring Boot入口类 9.2.4配置HikariCP连接池 9.2.5Spring Boot常用注解 9.2.6JpaRepository数据访问 9.3Reactive响应式处理 9.3.1响应式概述 9.3.2Reactor基本原理 9.3.3Reactor核心包publisher 9.3.4单量MonoT 9.3.5通量FluxT 9.3.6并行ParallelFlux 9.3.7处理槽Sinks 9.3.8响应式R2dbcRepository 9.3.9启用响应式R2DBC 9.3.10启用分布式内存网格 9.4Spring WebFlux 9.4.1Spring WebFlux简介 9.4.2WebFlux应用的入口类 9.4.3配置WebFlux应用 9.4.4HandlerFilterFunction操作过滤 9.4.5HandlerFunction业务处理 9.4.6RouterFunction路由函数 9.4.7Multipart Data多域数据 9.5场景应用示例 9.5.1学生信息查询 9.5.2基于JWT令牌实现分布式登录 9.6场景任务挑战——模糊查询 第10章Vue.js渐进式框架 10.1Vue概述 10.2Vue应用基础 10.2.1创建Vue应用 10.2.2生命周期 10.2.3组合式函数setup() 10.2.4响应性函数 10.2.5解构 10.3基础语法 10.3.1模板语法 10.3.2计算属性和侦听 10.3.3表单域的数据绑定 10.3.4组件对象的数据绑定 10.3.5事件绑定和触发 10.3.6自定义元素defineCustomElement 10.3.7条件和列表渲染 10.4h()函数和渲染函数render() 10.5使用组件 10.5.1组件定义及动态化 10.5.2异步组件 10.6函数集 10.7使用Axios请求后端数据 10.7.1Axios简介 10.7.2请求响应结构和错误处理 10.7.3发起请求 10.7.4配置拦截器 10.8场景应用示例 10.8.1动态增删书目 10.8.2学生信息查询 10.9场景任务挑战——下拉选择框联动 第11章用图形展示数据 11.1Web数据的图形可视化 11.2Apache ECharts图形前端 11.2.1Apache ECharts简介 11.2.2下载与引用 11.2.3ECharts创建图形的架构 11.3JFreeChart图形后端 11.3.1JFreeChart简介 11.3.2加入JFreeChart相关依赖 11.3.3JFreeChart应用基础 11.4场景应用示例 11.4.1招生情况SVG饼图(JFreeChart) 11.4.2招生情况面积图(ECharts) 11.5场景任务挑战——招生情况直方图 第12章消息服务 12.1消息服务概述 12.1.1消息服务简介 12.1.2消息服务模式 12.2用Apache Kafka作为消息服务器 12.2.1Apache Kafka简介 12.2.2启用Kafka服务器 12.2.3Kafka配置和管理 12.2.4KafkaTemplate模板 12.2.5生产者Producer和消费者Consumer 12.2.6Kafka响应式发送器和接收器 12.3整合WebSocket及SockJS 12.3.1在客户端使用 12.3.2在服务端使用 12.3.3使用拦截器 12.3.4Spring WebFlux中的WebSocket 12.4场景应用示例——聊天室 12.4.1应用需求 12.4.2主页 12.4.3登录组件users.component.js 12.4.4登录后端处理 12.4.5聊天组件chat.component.js 12.4.6实现JWT令牌验证 12.4.7配置Kafka和WebSocket全局参数 12.4.8WebSocket配置类及拦截器 12.4.9创建聊天服务 12.5场景任务挑战——学生、教师各自的聊天室 第13章教务辅助管理项目开发 13.1系统概述 13.2系统功能简介 13.3系统技术选型 13.3.1前端组件化 13.3.2后端模块化 13.4数据表设计 13.5系统实现 13.5.1创建Spring Reactive Web项目 13.5.2配置application.yml全局参数 13.5.3加入项目主要依赖 13.5.4引入JS支持文件 13.5.5使用聚合器管理组件 13.5.6应用入口程序 13.5.7WebFlux配置和路由配置 13.5.8身份验证过滤组件 13.5.9主页 13.5.10用户登录 13.5.11消息推送 13.5.12用户注册 13.5.13学院风采 13.5.14学生信息模糊查询 13.5.15招生数据一览 13.5.16资料上传 13.5.17交流空间 13.6打包发布