前言
#种一棵树最好的时间是十年前,其次是现在
很多程序员一开始在学习上找不到方向,但我想在渡过了一段时间的新手期之后这类问题大多都会变得不再那么明显,工作的方向也会逐渐变得清晰起来。
但是没过多久,能了解到的资料就开始超过每天学习的能力,像是买了没看的书、收藏没读的贴、mark 了之后再也没有关注过的文章越积越多,更别提每天面对各种技术分享或者微博里的新鲜玩意了。
大多数人每天能留给自己学习的时间有限,这个阶段如何提升学习效率就成了要解决的重点。
说说自己提升学习效率的心得,其实非常简单:体系化的学习。
我曾经很喜欢看一些博客或者是一些 “看起来” 比较通俗易懂的文章,每天在微博微信里刷到什么技术文章就 mark 下来,基本上几分钟就能读完。可一段时间下来,虽然读了不少东西,但是还是有种在原地打转的状态,并没有感受到有什么实际的提高。
最后实在忍不住,抱着厚书硬啃了一遍,突然有种豁然开朗的感觉:读书时自己学到的是一张完整的知识网络,每个知识点和其它内容相互联系和区别。这种全方位的理解比起一篇篇独立的文章,不知要高到哪里去了。
在重复了几次痛苦的学习-梳理过程后,再去看一些独立的文章或者资料往往会事半功倍,因为能在体系内找到相对应的知识,甚至有时候一本书里一页只需要看一句话,点破那层窗户纸,就可以掌握新的知识。很多程序员一开始在学习上找不到方向,但我想在渡过了一段时间的新手期之后这类问题大多都会变得不再那么明显,工作的方向也会逐渐变得清晰起来。
但是没过多久,能了解到的资料就开始超过每天学习的能力,像是买了没看的书、收藏没读的贴、mark 了之后再也没有关注过的文章越积越多,更别提每天面对各种技术分享或者微博里的新鲜玩意了。
大多数人每天能留给自己学习的时间有限,这个阶段如何提升学习效率就成了要解决的重点。
说说自己提升学习效率的心得,其实非常简单:体系化的学习。
我曾经很喜欢看一些博客或者是一些 “看起来” 比较通俗易懂的文章,每天在微博微信里刷到什么技术文章就 mark 下来,基本上几分钟就能读完。可一段时间下来,虽然读了不少东西,但是还是有种在原地打转的状态,并没有感受到有什么实际的提高。
最后实在忍不住,抱着厚书硬啃了一遍,突然有种豁然开朗的感觉:读书时自己学到的是一张完整的知识网络,每个知识点和其它内容相互联系和区别。这种全方位的理解比起一篇篇独立的文章,不知要高到哪里去了。
在重复了几次痛苦的学习-梳理过程后,再去看一些独立的文章或者资料往往会事半功倍,因为能在体系内找到相对应的知识,甚至有时候一本书里一页只需要看一句话,点破那层窗户纸,就可以掌握新的知识。所以我建议你看文章博客,不能只看一篇,通透的、连续的学习,效果才是最佳的。
作为开发人员,对于Spring全家桶肯定是不陌生的,而来自于Spring大家族的Spring Boot,作为Spring团队提供的流行框架,它的存在解决的Spring框架使用较为繁琐的问题,所以掌握SpringBoot是精通Spring必不可少的一个过程。
在面试过程中,SpringBoot的相关内容都会被面试官给问到,几乎一线互联网对于技术岗的任职要求都对Spring有一定的规定,所以学习Spring刻不容缓。
而今天,我们则主要一起来学习SpringBoot相关内容,这份华为大神珍藏版分享给你——SpringBoot全优笔记,面面俱到太全面了!
PART1:SpringBoot入门之打好扎实基础
1.SpringBoot的来临
- Spring的历史
- 注解还是XML
- SpringBoot的优点
- 传统Spring MVC和Spring Boot的对比
2.聊聊开发环境搭建和基本开发
- 搭建Spring Boot开发环境
- Spring Boot的依赖和自动配置
- 使用自定义配置
- 开发自己的Spring Boot项目
3.全注解下的Spring IOC
- IOC容器简介
- 装配你的Bean
- 依赖注入
- 生命周期
- 使用属性文件
- 条件装配Bean
- Bean的作用域
- 使用@Profile
- 引入XML配置Bean
- 使用Spring EL
4.开始约定编程——SpringAOP
- 约定编程
- AOP的概念
- AOP开发详解
- 多个切面
PART2:SpringBoot提升之修炼秘籍
1.访问数据库
- 配置数据源
- 使用JDBC Template操作数据库
- 使用JPA(Hibernate)操作数据
- 整合MyBaits框架
2.聊聊数据库事务处理
- JDBC的数据库事务
- Spring声明式事务的使用
- 隔离级别
- 传播行为
- @Transactional自调用失效问题
3.使用性能利器——Redis
- spring-data-redis项目简介
- 在Spring Boot中配置和使用Redis
- Redis的一些特殊用法
- 使用Spring缓存注解操作Redis
4.文档数据库——MongoDB
- 配置MongoDB
- 使用MongoTemplate实例
- 使用JPA
PART3:SpingBoot进阶学习之开发实战
1.初识Spring MVC
- Spring MVC框架的设计
- SpringMVC流程
- 定制Spring MVC的初始化
- Spring MVC实例
2.深入Spring MVC开发
- 处理器映射
- 获取控制器参数
- 自定义参数转换规则
- 数据验证
- 数据模型
- 视图和视图解析器
- 文件上传
- 拦截器
- 国际化
- Spring MVC拾遗
3.构建REST风格网站
- REDT简述
- 使用Spirng MVC开发REST风格端点
- 客户端请求RestTemplate
4.安全——Spring Security
- 概述和简单安全认证
- 使用WebSecurityConfigurerAdapter自定义
- 自定义用户服务信息
- 限制请求
- 用户认证功能
5.学点Spring其他的技术
- 异步线程池
- 异步消息
- 定时任务
- WebSocket应用
6.Spring5框架——WebFlux
- 基础概念
- 通过Spring MVC方式开发WebFlux服务端
- 深入WebFlux服务端开发
- 深入客户端开发
- 使用路由函数方式开发WebFlux
7.实践一下——抢购商品
-
设计与开发(数据库表设计+使用MyBatis开发持久层+使用Spring开发业务层和控制层+测试和配置)
-
高并发开发(超发现象+悲观锁+乐观锁+使用Redis处理高并发)
8.部署、测试和监控
- 部署和运行
- 测试
- Actuator监控端点
- HTTP监控
- JMX监控
9.分布式开发——Spring Cloud
- 服务治理和服务发现——Eureka
- 微服务之间的调用
- 断路器——Hystrix
- 路由网关——Zuul
- 使用@SpringCloudApplication
PART4:SpringBoot知识点补充
- A1:选择内嵌服务器
- A2:修改商标
- A3:深入Spring Boot自动装配
总结
很显然,微服务是未来的发展趋势,项目会从传统架构一点一点转向微服务架构。不论你是互联网人才,还是传统行业从业者,学习流行技术是非常重要的。SpringBoot作为官方大力推荐的一个技术,是每一个开发人员都应该要掌握的重点。
学习不难,贵在自觉和坚持。