第1篇 Web基础知识
第1章 认识微服务03
1.1 什么是微服务框架 03
1.2 互联网框架的演变 04
1.2.1 ORM框架 05
1.2.2 MVC框架 06
1.2.3 RPC框架 07
1.2.4 SOA框架 09
1.3 模块的拆分 09
1.3.1 拆分中的问题 10
1.3.2 拆分原则 10
1.4 当前主流微服务框架 12
1.4.1 Dubbo简介 12
1.4.2 Spring Cloud简介 13
1.4.3 HTTP与RPC简介 14
1.4.4 Spring Boot与Spring Cloud的关系 15
第2章 快速搭建一个微服务框架16
2.1 Spring Boot框架搭建 16
2.1.1 使用STS搭建开发环境 16
2.1.2 使用IntelliJ IDEA搭建开发环境 19
2.2 实现安全登录的微服务框架 21
2.2.1 功能描述与最终目标 22
2.2.2 功能结构 22
2.3 微服务框架搭建 23
2.3.1 搭建模块 23
2.3.2 启动Demo 31
2.3.3 打包发布 34
第3章 Restful风格的编程 36
3.1 Restful 简介 36
3.2 查询用户以及用户详情 37
3.2.1 编写测试类程序 37
3.2.2 常用注解 40
3.2.3 查询用户详情 47
3.3 处理创建请求 50
3.3.1 @RequestBody注解 51
3.3.2 日期类型的处理 52
3.3.3 @Valid注解 54
3.3.4 BindingResult验证参数合法性 55
3.4 用户信息修改与删除 56
3.4.1 用户信息修改 56
3.4.2 用户信息删除 58
第2篇 Spring Boot
第4章 Spring Boot中的IOC 61
4.1 IOC原理简介 61
4.1.1 IOC小案例 61
4.1.2 IOC简介 64
4.2 装配Bean 67
4.2.1 @ComponentScan简介 67
4.2.2 @ComponentScan使用实例 69
4.3 依赖注入ID 75
4.3.1 常用注解 75
4.3.2 @Autowired 注解 76
4.4 Bean 的生命周期 82
4.4.1 Bean 的初始化过程 82
4.4.2 Bean 的延迟初始化 85
4.4.3 Bean 的生命周期 86
4.5 配置文件90
4.5.1 配置文件的使用方式 90
4.5.2 Yml 配置文件的使用 95
第5章 Spring Boot 中的AOP 97
5.1 AOP 简介 97
5.1.1 AOP 小案例 97
5.1.2 AOP 术语 101
5.2 AOP 开发详解 102
5.2.1 连接点与两种代理 102
5.2.2 切面 106
5.2.3 切点 107
5.2.4 多切面与@Order 111
5.3 AOP 原理 114
5.3.1 AOP 代理原理讲解 114
5.3.2 ProxyCreatorSupport 核心代理类 116
5.3.3 通知和通知器 118
5.4 AOP 后置处理器 120
5.4.1 AnnotationAwareAspectJAutoProxyCreator 方式 120
5.4.2 后置处理器的注册 122
5.4.3 后置处理器处理@Aspect 的Bean 123
第6章 Spring Boot 中的数据源 125
6.1 配置数据源 125
6.1.1 默认数据源 125
6.1.2 自定义数据源 126
6.2 JdbcTemplate 的使用 131
6.2.1 JdbcTemplate 实例 131
6.2.2 JdbcTemplate 原理说明 134
6.3 JPA 的使用 135
6.3.1 JPA 概述 135
6.3.2 JPA 使用实例135
6.4 Spring Boot 与MyBatis 集成 140
6.4.1 MyBatis 原理 140
6.4.2 Spring Boot 与MyBatis 集成 141
第7章 Spring Boot 中的事务 148
7.1 隔离级别148
7.1.1 数据库的隔离级别 148
7.1.2 Spring Boot 中的隔离级别 151
7.2 声明式事务 152
7.2.1 @Transaction 注解 152
7.2.2 事务管理器 153
7.3 JPA 下的事务 155
7.3.1 普通的数据库访问 155
7.3.2 事务 159
7.4 JDBC 下的事务 161
7.5 事务传播行为 164
第8章 Spring Boot 中的Redis 167
8.1 Redis 的简单使用 167
8.1.1 Spring-boot-starter-data-redis 介绍 167
8.1.2 Redis 的使用 168
8.1.3 使用配置类建立Redis 工厂 170
8.2 对Redis 数据类型的操作 172
8.2.1 StringRedisTemplate 的使用 172
8.2.2 模板template 175
8.2.3 数据类型的操作 177
8.3 序列化 181
8.3.1 序列化实例 181
8.3.2 序列化讲解 185
8.4 缓存 186
8.4.1 缓存的使用 186
8.4.2 缓存的注解 191
第9章 Spring Boot 中的Security 200
9.1 基本原理200
9.1.1 默认安全登录 201
9.1.2 Security 原理说明 202
9.2 自定义用户认证逻辑 204
9.2.1 处理用户获取逻辑 204
9.2.2 处理用户校验逻辑 206
9.2.3 密码加密与解密 208
9.3 自定义用户认证流程 210
9.3.1 自定义登录页面 210
9.3.2 优化自定义登录页面 213
9.3.3 登录成功之后的处理 218
9.3.4 登录失败之后的处理 220
第3篇 Spring Cloud
第10章 服务治理Spring Cloud Eureka 225
10.1 Eureka 快速入门 225
10.1.1 服务治理 225
10.1.2 Eureka 的服务治理 227
10.1.3 Eureka 的服务注册中心搭建 228
10.1.4 Eureka 的服务提供者 232
10.1.5 Eureka Server 的高可用 235
10.2 Eureka 的消费 237
10.2.1 RestTemplate 直接调用 237
10.2.2 LoadBalancerClient 调用 239
10.2.3 @LoadBalanced 注解 240
10.3 Eureka 原理详解 241
10.3.1 基础框架 241
10.3.2 机制 242
10.4 进阶配置项说明 244
10.4.1 服务注册类的配置 244
10.4.2 服务实例类的配置 246
10.4.3 服务注册中心配置 248
10.4.4 服务注册中心仪表盘配置 249
10.5 Eureka 源码分析 249
10.5.1 DiscoveryClient 实例 250
10.5.2 服务发现 251
第11章 负载均衡Spring Cloud Ribbon 254
11.1 Ribbon 使用 254
11.1.1 客户端负载均衡 254
11.1.2 Ribbon 实例 255
11.1.3 Ribbon 用法总结 258
11.2 RestTemplate 的详细使用方法 259
11.2.1 RestTemplate 功能 259
11.2.2 GET 请求API 261
11.2.3 POST 请求API 265
11.2.4 PUT 请求API 271
11.2.5 DELETE 请求API 271
11.3 Ribbon 的负载均衡入口 272
11.4 Ribbon 的负载均衡器 274
11.4.1 AbstractLoadBalancer 类 274
11.4.2 BaseLoadBalancer 类 275
11.4.3 DynamicServerListLoadBalancer 类 277
11.4.4 服务注册 282
第12章 声明式服务调用Spring Cloud Feign 285
12.1 Feign 的使用实例 285
12.1.1 Feign 演示实例 285
12.1.2 Feign 与Spring MVC 290
12.2 Feign 中Ribbon 的配置 294
12.2.1 全局配置与指定服务的配置 294
12.2.2 重试机制 295
12.3 Feign 的配置 296
12.3.1 日志配置 296
12.3.2 其他配置 298
12.3.3 自定义配置 299
第13章 服务容错保护Spring Cloud Hystrix 303
13.1 Hystrix 的使用 303
13.1.1 服务降级 303
13.1.2 超时设置 308
13.1.3 服务熔断 313
13.2 Hystrix 的原理 314
13.2.1 Hystrix 产生背景 315
13.2.2 Hystrix 实现原理 316
13.3 Hystrix 的应用 318
13.3.1 Hystrix 工作流程 318
13.3.2 自定义使用Hystrix 320
13.4 Hystrix 的配置 322
13.4.1 属性配置说明 322
13.4.2 属性配置 323
13.4.3 Command 属性 325
第14章 配置中心Spring Cloud Config 328
14.1 Config 的原理 328
14.2 Config 的服务端使用 329
14.2.1 搭建配置中心 329
14.2.2 配置中心测试 333
14.2.3 本地Git 336
14.3 Config 的客户端使用 337
14.3.1 配置客户端 337
14.3.2 客户端测试 338
14.3.3 Config 的高可用性 340
14.4 Config 的知识点 341
14.4.1 Config 的Git 介绍 341
14.4.2 动态刷新配置 342
第15章 网关Spring Cloud Zuul 343
15.1 Zuul 路由 343
15.1.1 基本的网关功能 343
15.1.2 自定义路由 348
15.1.3 Cookie 头信息控制 349
15.2 Zuul 请求过滤 351
15.2.1 应用场景 351
15.2.2 鉴权 352
15.2.3 限流 355
15.3 Zuul 其他知识点 356
15.3.1 过滤器 356
15.3.2 高可用 356
第4篇 微服务开发实战
第16章 点餐管理系统实战359
16.1 点餐管理系统框架说明 359
16.1.1 系统使用的技术 359
16.1.2 系统功能模块 361
16.1.3 系统搭建 361
16.2 点餐管理系统框架设计 372
16.2.1 具体需求分析 372
16.2.2 数据库设计 372
16.2.3 对外接口设计 373
16.3 商品模块开发 374
16.3.1 基本的准备工作 374
16.3.2 接口开发 376
16.3.3 封装Restful 接口 379
16.3.4 Restful 接口测试 380
16.4 订单模块开发 382
16.4.1 基本的准备工作 382
16.4.2 接口开发 384
16.4.3 封装Restful 接口 386
16.4.4 Restful 接口测试 386
第17章 图书管理系统实战387
17.1 图书管理系统框架说明 387
17.1.1 需求分析 387
17.1.2 技术说明 388
17.2 图书管理系统框架设计 388
17.2.1 数据库设计 388
17.2.2 接口设计 389
17.2.3 环境搭建 390
17.3 借阅模块开发 393
17.3.1 实体类 394
17.3.2 Repository 接口 394
17.3.3 Service 层 395
17.3.4 Controller 层 395
17.3.5 接口测试 395
· · · · · · (
收起)