Spring曾有过光辉岁月,它一路与时俱进,引领Java编程潮流至少10年。如今, Spring Boot的诞生,让我们再也不用被Spring的繁琐配置所束缚。Spring Boot是当前后端开发的极佳框架。它在如今纷繁的技术中尤为突出。
而现在SpringBoot已经进入了2.0版本,今天为大家带来的就是SpringBoot2.0版本之后的SpringBoot实战,从入门到用微服务SpringBoot进行项目实战,这份笔记定位于入门、进阶、实战。所以,会照顾到有一定编程经验,对编程有一定了解的初学者,同时也兼顾相对资深的开发人员。
这份笔记共计十五个部分,包括最后的两个项目实战:
- 进入Spring Boot世界
- 准备开发环境
- 使用开发工具
- Spring Boo基础
- 分层开发Web应用程序
- 响应式编程
- Spring Boot进阶
- 用ORM操作SQL数据库
- 接口架构风格——RESTul
- 集成安全框架,实现安全认证和授权
- 在Spring Boot中使用Redis实现高并发
- 用RabbitMQ实现系统间的数据交换
- 使用NoSQL数据库实现搜索引擎
- 开发企业级通用的后台系统
- 实现一个类似京东"的电子商务商城
为了不影响大家的阅读体验,我把这份笔记的免费获取方式放在了文末 !!!
第1章进入Spring Boot世界
认识Spring Boot
学习Spring Boot的建议
第2章准备开发环境
措建环境
- 安装Java开发环境JDK
- 配置JDK的环境变量
熟悉Maven
- 安装及配置Maven
- 认识其中的pom.xml文件
- Maven的运作方式
- 配置国内仓库
第3章使用开发工具
安装开发工具IDEA及插件
- 安装IDEA
- 配置IDEA的Maven环境
- 安装Spring Assistant插件
- 安装插件Lombok
实例1:用Spring Boot输出"Hello World"
- 构建Spring Boot项目
- 编写控制器,实现输出功能
- 在IDEA中运行程序
- 打包成可执行的JAR包
在Eclipse中开发Spring Boot应用程序
- 安装Eclipse
- 安装Spring Tools 4插件
- 配置Eclipse的Maven环境
- 创建Spring Boot项目
了解Spring官方开发工具STS
必会的IDEA实用技能
- 智能提示代码
- 自动提示参数
- 实现自动转义
- 自定义高复用代码块
- 设置注释信息
- 超能的“Alt+Enter'快捷键
- 使用全局配置
- 自动生成语句
对比IDEA与Eclipse
第4章Spring Boot基础
了解Spring Boot
Spring Boot的常用注解
使用配置文件
- 实例3:演示如何使用application.yml文件
- 实例4:演示如何使用application.properties文件
- 实例5:用application.ym和application.properties配置多环境
了解Spring Boot的Starter
第5章分层开发Web应用程序
应用程序分层开发模式—MVC
使用视圈技术Thymeleaf
- 认识Thymeleaf
- 基础语法
- 处理循环遍历
- 处理公共代码块
- 处理分页
- 验证和提示错误消息
- 实例6:编写Thymeleaf视图以展示数据
使用控制器
- 常用注解
- 将URL映射到方法
- 处理HTTP请求方法
- 处理内容类型
- 方法中参数的使用
理解模型
实例7:实现MVC模式的Web应用程序
- 添加依赖
- 创建实体模型
- 创建控制器
- 创建用于展示的视图
验证数据
- 认识内置的验证器Hibernate-validator
- 自定义验证功能
- 实例8:验证表单数据并实现数据的自定义验证
第6章响应式编程
认识响应式编程
实例9:用注解式开发实现Hello World
- 配置WebFlux依赖
- 编写控制器
实例10:用注解式开发实现数据的增加、删除、修改和查询
- 创建实体类
- 编写控制器
- 测试API功能
实例11:用响应式开发WebFlux
- 编写处理器类Handler
- 编写路由器类Router
实例12:用WebFlux模式操作MongoDB数据库,实现数据的增加、删除、修改和查询功能
- 添加依赖
- 创建实体类
- 编写接口
- 编写增加、删除、修改和查询数据的API
第7章Spring Boo进阶
面向切面编程AOP
- 认识Spring AOP
- 实例13:用AOP方式管理日志
认识loC容器和Servlet容器
- 认识容器
- 实例14:用IoC管理Bean
- 实例15:用Servlet处理请求
过滤器与监听器
认识过滤器
- 实例16:实现过滤器
- 认识监听器
- 实例17:实现监听器
自动配置
- 自定义入口类
- 自动配置的原理
- 实例18:自定义Starter
元注解
- 了解元注解
- 实例19:自定义注解
异常处理
- 认识异常处理
- 使用控制器通知
- 实例20:自定义错误处理控制器
- 实例21:自定义业务异常类
单元测试
- 了解单元测试
- Spring Boot的测试库
- 快速创建测试单元
- 实例22: Controller层的单元测试
- 实例23: Service层的单元测试
- 实例24: Reitory层的单元测试
第8章用ORM操作SQL数据库
认识Java的数据库连接模板JDBCTemplate
JPA——Java持久层API
- 认识Spring
- Data
- 认识PA
- 使用JPA
- JPA注解和属性介绍
- 实例26:用JPA构建实体数据表
认识JPA的接口
- JPA接口JpaReitory
- 分页排序接口PagingAndSortingReitory
- 数据操作接口CrudReitory
- 分页接口Pageable和Page
- 排序类Sort
JPA的查询方式
约定方法名
- JPQL
- 原生SQL
- Specifications
- ExampleMatcher
- 谓语QueryDSL
- NamedQuery
实例27:用JPA开发文章管理模块
实现自动填充字段
掌握关系映射开发
认识MyBatis——Java数据持久层框架
实例31:用MyBatis实现数据的增加、删除、修改、查询和分页
比较JPA与MyBatis
第9章接口架构风格一RESTfuI
REST——前后台间的通信方式
设计统一的RESTful风格的数据接口
- 版本控制
- 过滤信息
- 确定HTTP方法
- 确定HTTP的返回状态
- 定义统一返回格式
实例32:为APP、PC、 H5网页提供统一风格的API
- 实现响应的枚举类
- 实现返回的对象实体
- 封装返回结果
- 统一处理异常
- 编写测试控制器
- 实现数据的增加、删除、修改和查询控制器
- 测试数据
实例33:用Swagger实现接口文档
- 认识RestTemplate
- 实例34:用RestTemplate发送GET请求
- 实例35:用RestTemplate发送T请求
- 用RestTemplate发送PUT和DELETE请求
用RestTemplate发起请求
第10章集成安全框架,实现安全认证和授权
Spring Security——Spring的安全框架
配置Spring Security
- 继承WebSecurityConfigure-Adapter
- 配置自定义策略
- 配置加密方式
- 自定义加密规则
- 配置多用户系统
- 获取当前登录用户信息的几种方式
实例36:用Spring Security实现后台登录及权限认证功能
- 引入依赖
- 创建权限开放的页面
- 创建需要权限验证的页面
- 配置Spring Security
- 创建登录页面
- 测试权限
权限控制方式
- Spring EL权限表达式
- 通过表达式控制URL权限
- 通过表达式控制方法权限
- 实例37:使用JSR-250注解
- 实例38:实现RBAC权限模型
认识JWT
实例39:用JWT技术为Spring Boot的API增加认证和授权保护
Shiro——Apache通用安全框架
实例40:用Shiro实现管理后台的动态权限功能
对比KSpring Security与Shiro
第11章在Spring Boot中使用Redis实现高并发
认识Spring Cache
认识Redis
Redis的数据类型
用RedisTemplate操作Redis的5种数据类型
实例47:用Redis和MyBatis完成缓存数据的增加、删除、修改、查询功能
实例48:用Redis和JPA实现缓存文章和点击量
实例49:实现分布式Session
第12章用RabbitMQ实现系统间的数据交换
认识RabbitMQ
RabbitMQ的基本概念
RabbitMQ的六种工作模式
认识AmqpTemplate接口
在Spring Boot中集成RabbitMQ
在Spring Boot中实现RabbitMQ的4种发送/接收模式
实例54:实现消息队列延迟功能
第13章使用NoSQL数据库实现搜索引擎
Elasticsearch——搜索应用服务器
实例55:用ELK管理Spring Boot应用程序的日志
实例56:在Spring Boot中实现增加、删除、修改、查询文档的功能
Elasticsearch查询
实例57:实现产品搜索引擎
Solr——搜索应用服务器
实例58:在Solr中实现数据的增加、删除、修改和查询
对比Elasticsearch和Solr
第14章实例59:开发企业级通用的后台系统
用JPA实现实体间映射关系
- 创建用户实体
- 创建角色实体
- 创建权限实体
用Spring Security实现动态授权(RBAC)功能
- 实现管理(增加、删除、修改和查询)管理员角色功能
- 实现管理权限功能
- 实现管理管理员功能
- 配置安全类
- 实现基于RBAC权限控制功能
监控Spring Boot应用
- 在Spring Boot中集成Actuator
- 在Spring Boot中集成Spring Boot admin应用监控
- 在Spring Boot中集成Drid连接池监控
第15章实例60:实现一个类似京东的电子商务商城
用Spring Security实现会员系统
- 实现会员实体
- 实现会员接口
- 实现用户名、邮箱、手机号多方式注册功能
- 实现用MQ发送会员注册验证邮件
- 实现用户名、邮箱、手机号多方式登录功能
整合会员系统(Web、APP多端多方式注册登录) +后台系统
实现购物系统
- 设计数据表
- 实现商品展示功能
- 实现购物车功能
- 用Redis实现购物车数据持久化
用Redis实现分布式秒杀系统
- 实现抢购功能,解决并发超卖问题
- 缓存页面和限流
用RabbitMQ实现订单过期取消功能
实现结算和支付功能
- 实现结算生成订单功能
- 集成支付
免费获取方式:转发这篇文章+关注我,点击这里跳转GitHUb扫码免费获取!