从0开始手把手教你学习 Spring ,循序渐进由浅入深掌握 Spring 的核心与底层,助你成为 Spring 大佬。
目录
小册介绍
SpringFramework到底有多重要
能帮你哪些
作者介绍
适宜人群
你会学到什么
小册介绍
小伙伴的迷茫
我刚学完 JavaWeb 基础,接下来要学什么框架啊,感觉一头雾水。。。
我都学完 Spring 了,可感觉也只会用,稍微碰到一点问题就不会处理了。。。
看了大佬的 《SpringBoot 源码解读与原理分析》 小册,感觉自己根本就不会 SpringFramework ,想重新学一遍。。。
这几种言论,是我自出品《SpringBoot 源码解读与原理分析》小册之后,收到的最多的几种呼声(这种呼声在 SpringCloud 小册发布之后更多了)。确实如此,很多小伙伴都说看了原理小册,发现自己原来好多东西都没学 / 没怎么接触(诸如 SpringFramework 事件机制、后置处理器、BeanDefinition
等),那就更别谈深入原理了。
SpringFramework到底有多重要
另外,还有更多的小伙伴,属于刚刚学完 JavaSE ,或者 JavaWeb 的基础知识,刚学会使用 Servlet 来开发简单的小 Web 应用。学完了基础,自然要开始接触框架了,可是框架那么多,从哪个先开始学呢?以小册编写的时间节点来看,2020 年的风向,对于第一个框架的学习,大多数以推荐 MyBatis 为主,当然也有部分推荐先学习 SpringFramework 。以作者的观点,作为入门的框架,你更应该先学习 SpringFramework ,原因大致如下:
- 几乎当下所有的企业级 JavaEE 开发都离不开 SpringFramework ;
- SpringFramework 不局限于某一个部分 / 模块的技术,对于表现层、业务层、持久层等都有提供解决方案;
- SpringFramework 最最强大的地方在于与其他技术的整合,别人一开始推荐学习的 MyBatis 属于持久层解决方案,SpringFramework 能跟 MyBatis 很好地整合在一起,最终你还是得用 SpringFramework ,那为什么不先学这个中心呢?
- SpringFramework 是后续 SpringBoot 、乃至微服务 SpringCloud 的最最基础,早早地打下基础,可以更好地为以后更高阶的技术学习铺路;
- SpringFramework 被很多面试官拿来作为经典面试考题,且难度有逐年上升的趋势。。。
事实上,无论是国内还是国外,SpringFramework 的热度走势一直都是特别健康的,我们可以这么说,SpringFramework 已然成为了 Java 开发的标杆、灯塔级别的“标准”,熟练掌握 SpringFramework ,甚至精通它,对于进军大厂,获取高薪来说是相当的有必要。
能帮你哪些
既然是从小白开始,小册干脆直接带你从根本不认识 SpringFramework 开始,慢慢领你进入 SpringFramework 的世界。随着学习的不断深入,小册会带你逐步深入 SpringFramework 的设计和底层,让你知道原来优秀的框架在底层设计的如此精妙,从而让学习的水平进一步升华。从整体面上讲,小册是分模块来讲解 SpringFramework 中的几大核心:IOC 、AOP 、Dao 编程、WebMvc ,以及与第三方技术的整合,力求把 SpringFramework 中的重要知识点都覆盖到,讲清楚,同时也对目前对 SpringFramework 使用比较熟练的小伙伴提供更深层次的讲解与原理剖析。
作者介绍
LinkedBear:前浪潮集团后端开发工程师,Spring 系列小册作者,一个沉浸在源码中的程序猿与技术分享者。
适宜人群
小册以 SpringFramework 的入门为起点,逐步带你学习 SpringFramework 的进阶、高级,和底层的原理,不需要小伙伴有前置的框架学习和使用经验,只需要最起码的 JavaSE 知识、JavaWeb 知识即可。
所以这本小册适合:
- 刚学完 JavaWeb ,准备开始学习框架的小伙伴
- 对 SpringFramework 有使用经验,但仅仅停留在表面使用的小伙伴
- 能熟练使用 SpringFramework 的基本功能,但没有深入挖掘深层次的特性和高级使用的小伙伴
- 了解、使用过 SpringBoot ,想研究深层次原理却发现基础不足的小伙伴
- 有意向以后成为高级开发的小伙伴
- 有意向对 Spring 整体生态深入探究的小伙伴
你会学到什么
- IOC 部分
- IOC 的由来、实现方式详解
- Bean 的特性、组件扫描与装配
- IOC 容器的底层设计和原理
- 事件和监听器机制、资源
- SpringFramework 的高级特性
- Bean 的完整生命周期与原理
- AOP 部分
- AOP 的由来、AOP 与代理的关系
- AOP 的实现方式详解
- AOP 的应用场景
- AOP 的底层实现全流程解析
- Dao 部分
- SpringFramework 整合 jdbc 详解
- JdbcTemplate 的使用
- SpringFramework 对事务的支持详解
- 事务实现的底层剖析
- Web 部分
- SpringFramework 整合 web 详解
- SpringWebMvc 支持 web 的使用方式
- SpringWebMvc 的特性详解
- SpringWebMvc 的核心工作原理解析
- 第三方整合部分
- SpringFramework 整合 JUnit - 单元测试
- SpringFramework 整合 MyBatis - 持久层方案
- ...(后续安排)