前言
近年来,Spring Boot 是整个Java社区中最有影响力的项目之一,它的设计初衷是解决Spring各版本配置工作过于繁重,目前已经逐渐替代传统SSM架构。但SSM和Spring Boot并不冲突。Spring Boot更简单、更自动化,减少了传统SSM开发的配置。程序员在用Springboot开发应用程序时能做到零配置或极简配置。同时,为了不失灵活性,它也支持自定义操作。
下面两张图片是Springboot在国内外的关注度趋势图:
可以看到Springboot在国内外的关注度逐年递增,它专注于快速、方便地集成单个个体,如果应用程序是基于Spring Boot开发的,则将来升级到云开发、微服务更顺利。现在已经是2020年了,我们做开发的如果还不会现在新兴的技术的话,始终会被淘汰的。
可能有些人就会说了:小编你精通Springboot了?(我就是个小菜鸡,不敢说话,后面说的话可能是班门弄斧了)这里分享一些Springboot学习经验吧,我在学Springboot的时候初期是在对基础理论有一定的了解之后,自己动手照着例子去实现一遍,最好是自己手写代码,要是自己手写不成功,就下载相关源代码进行研究,在完全理解之后再进行后面的学习。同时还要尽量让自己能合理、高效地使用开发工具(IDEA、Eclipse 等),快速提升编程效率和编程能力。我当初在学习Springboot的时候,用的一直是一份文档,这份文档从基础到进阶再到项目实战层层递进,在学习时对我的帮助挺大的。本着好东西就是要分享出来的原则,下面我会把文档(基础+进阶+实战+源码)在下面为大家展示出来,希望对大家有些许参考意义。
开篇
- 第1章 进入Spring Boot世界
- 认识Spring Boot
- 学习Spring Boot的建议
- 第2章 准备开发环境
- 搭建环境
- 熟悉Maven
- 第3章 使用开发工具
- 安装开发工具IDEA及插件
- 实例1:用Spring Boot输出“Hello World”
- 在Eclipse中开发Spring Boot应用程序
- 了解Spring官方开发工具STS
- 必会的IDEA实用技能
- IDEA与Eclipse的区别
- 如何使用本书源代码
基础篇
- 第4章 Spring Boot基础
- 了解Spring Boot
- Spring Boot的常用注解
- 使用配置文件
- 了解Spring Boot的Starter
- 第5章 分层开发Web应用程序
- 应用程序分层开发模式——MVC
- 使用视图技术Thymeleaf
- 使用控制器
- 理解模型
- 实例7:实现MVC模式的Web应用程序
- 验证数据
- 第6章 响应式编程
- 认识响应式编程
- 实例9:用注解式开发实现Hello World
- 实例10:用注解式开发实现数据的增加、删除、修改和查询
- 实例11:用响应式开发WebFlux
- 实例12:用WebFlux模式操作MongoDB数据库,实现数据的增加、删除、修改和查询功能
进阶篇
- 第7章 Spring Boot进阶
- 面向切面编程AOP
- 认识IoC容器和Servlet容器
- 过滤器与监听器
- 自动配置
- 元注解
- 异常处理
- 单元测试
- 第8章 用ORM操作SQL数据库
- 认识Java的数据库连接模板JDBCTemplate
- JPA——Java持久层API
- 认识JPA的接口
- JPA的查询方式
- 实例27:用JPA开发文章管理模块
- 实现自动填充字段
- 掌握关系映射开发
- 认识MyBatis——Java数据持久层框架
- 实例31:用MyBatis实现数据的增加、删除、修改、查询和分页
- 比较JPA与MyBatis
- 第9章 接口架构风格——RESTful
- REST——前后台间的通信方式
- 设计统一的RESTful风格的数据接口
- 实例32:为APP、PC、H5网页提供统一风格的API
- 实例33:用Swagger实现接口文档
- 用RestTemplate发起请求
- 第10章 集成安全框架, 实现安全认证和授权
- Spring Security——Spring的安全框架
- 配置Spring Security
- 实例36:用Spring Security实现后台登录及权限认证功能
- 权限控制方式
- 认识JWT
- 实例39:用JWT技术为Spring Boot的API增加认证和授权保护
- Shiro——Apache通用安全框架
- 实例40:用Shiro实现管理后台的动态权限功能
- 对比Spring Security与Shiro
- 第11章 集成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
篇幅限制无法全部展示出来,需要获取这份文档的小伙伴,可以点击此处来获取就可以了!
项目实战篇(二大项目)
项目一:开发企业级通用的后台系统
- 用JPA实现实体间映射关系
- 用Spring Security实现动态授权(RBAC)功能
- 监控Spring Boot应用
项目二:实现一个类似“京东”的电子商务商城
- 用Spring Security实现会员系统
- 整合会员系统(Web、APP多端多方式注册登录)+后台系统
- 实现购物系统
- 用Redis实现分布式秒杀系统
- 用RabbitMQ实现订单过期取消功能
- 实现结算和支付功能
写在最后
无论是初学者,还是经验丰富的开发人员,在使用Spring Boot进行程序开发工作时,最终的目的就是开发过程中解决实际问题,上面的各个小实例,清晰易懂、贴合实际,对我的帮助还是挺大的。
需要获取这份文档的小伙伴,可以点击此处来获取就可以了!