将近8个月没有更新过文章了,今晚兴起整理下笔记,作为初学者在了解Spring的时候很麻烦,总觉的记不住,我自己总结了下关于spring,不喜勿喷,如有错误欢迎指正。
第一、IOC:inversion of controller,控制反转,我们要理解什么叫控制,什么叫反转。控制:指代对象的创建是应用程序本身来创建,也就是应用程序控制!反转:也就是现在不在是应用程序来创建,而是由客户端来创建。好处:应用程序不在管具体实现和对象创建。更多去关注业务,不再依赖对象,层与层之间分离,实现解耦。
这里会提及到DI:dependency injection ,依赖注入,同样分为依赖和注入。依赖:指代bean对象创建依赖于容器,bean对象的依赖资源;注入:指代bean对象依赖的资源由容器来设置和装配(注入)。spring注入分为两大类:构造器注入和setting注入(setting注入必须有set方法,如果属性中有Boolean类型,get方法变成is方法)
第二、AOP:aspect oriented programming,面向切面编程,简单理解就是在你写好的代码上,在不增加新代码的前提下,增加新功能,此时有没有懵逼?没有的话就不需要往下看了,AOP编程模式:横向的编程,通过代理的方式实现,如图:
几个名词解释:1、关注点:就是增加某个业务,如事务,日志,安全,缓存等等
2、切面:一个关注点的模块化,aspect
3、通知:advice,在切面的某个特定点上执行的动作
4、织入:weaving,把切面连接到其他的应用程序类型或者对象上,并创建一个被通知的对象。