由于Spring家族的东西很多,一次性写完也不太现实。所以这一次先更新Spring「最核心」的知识点:AOP和IOC
无论是入门还是面试,理解AOP和IOC都是非常重要的。在校招的时候,我没被问过Mybatis/Hibernate/Struts2这样的框架,而Spring就经常会被问到。
这次的PDF共有「149」页,PDF涉及到的内容:
- IOC和AOP的全面讲解
- Spring事务详解和相关问题
- SpringIOC/AOP相关面试题
为什么要用Spring
当年的我,刚学Spring的时候,会想:『这IOC和AOP』是什么鬼玩意啊?一大堆的名词「控制反转」「依赖注入」「面向切面编程」。这是在给我搞笑的吧。
在最开始学的IOC折腾了一大堆的玩意,结果就是在管「创建对象」的事??逗我呢???我直接new一个对象出来不香吗?
有这种想法这种明显就是「代码写得少了,想得多了」
我们写代码,不仅仅是要能实现功能,实现完了以后我们还得对写过的代码「维护」。如果我们的代码写得很烂,那「维护」的成本就很高。
维护实际上是做什么事?
- 出了问题需要找到是哪块的代码有问题
- 在原有的基础上加入一些新的功能(也就是所谓的迭代)
面对重复的/繁琐的非业务代码:
- 如果程序出了问题,我们得看吧?谁也保证不了重复的代码就没有问题。
- 我们要想加一个新的功能,还得按原来的方式写吧?代码量会越来越多&#