目 录
第1章 Java基础 1
1.1 注解 1
1.1.1 什么是注解 1
1.1.2 内置注解 2
1.1.3 元注解 2
1.1.4 自定义注解 3
1.1.5 注解使用场景介绍 6
1.2 反射 7
1.2.1 反射机制 7
1.2.2 理解Class类 7
1.2.3 反射的使用 9
1.3 小结 15
第2章 Spring基础 16
2.1 Spring框架介绍 16
2.1.1 起源 16
2.1.2 简介 17
2.1.3 框架结构 17
2.2 依赖注入DI与控制反转IOC 19
2.2.1 什么是依赖注入 19
2.2.2 什么是控制反转 19
2.2.3 依赖注入的优缺点 20
2.2.4 IOC实例 20
2.3 面向切面编程 25
2.3.1 认识横切和纵切 25
2.3.2 什么是AOP 25
2.3.3 AOP原理 26
2.4 小结 29
第3章 核心容器 30
3.1 IOC容器 30
3.1.1 容器介绍 30
3.1.2 BeanFactory 30
3.1.3 ApplicationContext 35
3.2 Bean的配置 36
3.2.1 基于XML配置Bean 36
3.2.2 使用注解定义Bean 36
3.2.3 基于Java类提供Bean定义 37
3.3 Bean的注入 38
3.3.1 XML方式注入 38
3.3.2 注解方式注入 46
3.4 Bean的作用域和生命周期 47
3.4.1 Bean的作用域 47
3.4.2 Bean的生命周期 49
3.5 小结 53
第4章 Spring之AOP 54
4.1 AOP基础 54
4.1.1 AOP的引入 54
4.1.2 AOP主要概念 55
4.2 AOP实现 56
4.3 小结 66
第5章 Spring之DAO 67
5.1 JDBC详解 67
5.1.1 JDBC介绍 67
5.1.2 操作步骤 68
5.1.3 Statement的使用 68
5.1.4 使用PreparedStatement返回自增主键 70
5.1.5 使用CallableStatement调用存储过程 72
5.1.6 批处理 73
5.1.7 事务处理 76
5.2 Spring DAO模块 79
5.2.1 JdbcDaoSupport的使用 79
5.2.2 MappingSqlQuery的使用 84
5.2.3 SqlUpdate的使用 85
5.2.4 SqlFunction的使用 86
5.3 Spring事务管理 87
5.4 小结 88
第6章 MyBatis快速入门 89
6.1 ORM框架介绍 89
6.1.1 ORM框架简介 89
6.1.2 MyBatis框架介绍 90
6.1.3 MyBatis入门 90
6.2 XML配置 93
6.2.1 properties属性 93
6.2.2 settings 95
6.2.3 typeAliases 98
6.2.4 typeHandlers 99
6.2.5 配置环境(environments) 104
6.2.6 映射器(mappers) 107
6.3 XML映射文件 107
6.3.1 查询元素select 107
6.3.2 更新元素Insert、Update、Delete 109
6.3.3 可重用语句块sql 110
6.3.4 数据集映射resultMap 111
6.3.5 缓存和自定义缓存 118
6.4 动态SQL 123
6.4.1 if语句 123
6.4.2 choose (when, otherwise)语句 124
6.4.3 choose (when, otherwise)语句 124
6.4.4 foreach语句 125
6.5 逆向工程 126
6.6 分页插件pagehelper 129
6.7 小结 130
第7章 Spring之Spring MVC 131
7.1 MVC框架 131
7.1.1 MVC模式简介 131
7.1.2 MVC和设计模式区别 132
7.1.3 优缺点 132
7.2 Spring MVC处理流程 133
7.2.1 Spring MVC引入 133
7.2.2 处理流程 142
7.3 HandlerMapping的使用 149
7.3.1 RequestMappingHandlerMapping 150
7.3.2 BeanNameUrlHandlerMapping 151
7.3.3 SimpleUrlHandlerMapping 151
7.4 传递数据到Controller 152
7.4.1 URL传递数据到Controller 152
7.4.2 View传递数据到Controller 154
7.5 传递数据到View 155
7.5.1 ModelAndView 155
7.5.2 @SessionAttributes 156
7.5.3 @ModelAttribute 157
7.6 拦截器的使用 159
7.7 Ajax与Controller交互 161
7.8 小结 164
第8章 Spring Boot配置 165
8.1 Spring Boot基础 165
8.1.1 Spring Boot简介 165
8.1.2 在线安装 166
8.1.3 离线安装 166
8.1.4 创建Spring Boot项目 167
8.2 Spring Boot基本配置 169
8.2.1 定制Banner 169
8.2.2 配置文件 170
8.2.3 使用xml配置 170
8.3 Spring Boot读取配置 172
8.3.1 读取核心配置文件 172
8.3.2 读取自定义配置文件 173
8.4 Profile配置 174
8.5 日志配置 175
8.5.1 简述 175
8.5.2 Logback的使用 176
8.5.3 Log4j2的使用 179
8.6 运行原理 181
8.6.1 习惯优于配置 181
8.6.2 运行原理 182
8.7 小结 185
第9章 Spring Boot的应用 186
9.1 Spring Boot之Web 186
9.1.1 Spring Boot集成Thymeleaf 186
9.1.2 Spring Boot集成JSP 190
9.2 Spring Boot之Data 191
9.2.1 Spring Boot集成MyBatis 192
9.2.2 Spring Boot集成Redis 197
9.2.3 Spring Boot集成MyBatis使用Redis做缓存 202
9.2.4 Spring Boot集成RabbitMQ 208
9.3 Spring Boot之集成其他工具 219
9.3.1 Spring Boot集成Druid 219
9.3.2 Spring Boot定时任务 221
9.3.3 Spring Boot集成Swagger2 223
9.3.4 Spring Boot打包部署 227
9.4 小结 229
第10章 Docker入门 230
10.1 Docker基础 230
10.1.1 Docker介绍 230
10.1.2 Docker在Windows下的安装 231
10.2 Docker镜像 233
10.2.1 获取镜像 233
10.2.2 查看镜像 234
10.2.3 使用tag添加镜像标签 234
10.2.4 使用inspect查看详细信息 234
10.2.5 使用history查看镜像历史记录 235
10.2.6 镜像查找 235
10.2.7 删除镜像 236
10.2.8 创建镜像 237
10.2.9 另存和载入镜像 238
10.3 容器 239
10.3.1 新建与启动容器 239
10.3.2 守护态运行 241
10.3.3 终止容器 241
10.3.4 进入容器 242
10.3.5 容器的导入导出 243
10.4 搭建私有仓库 244
10.5 数据管理 245
10.5.1 数据卷 245
10.5.2 数据卷容器 247
10.6 端口映射与容器互联 247
10.6.1 端口映射 248
10.6.1 容器互联 249
10.7 Dockerfile 250
10.8 Docker容器Tomcat部署war包 252
10.9 小结 254
第11章 用户权限管理项目实战 255
11.1 项目基础 255
11.1.1 项目介绍 255
11.1.2 需求分析 255
11.1.3 技术选型 256
11.2 项目实现 257
11.2.1 搭建框架 257
11.2.2 数据库设计 258
11.2.3 前端框架引入 259
11.2.4 用户角色增删改查 261
11.2.5 Shiro用户权限管理 271
11.3 小结 277