交互做的好网站,erp仓库管理系统,做网站后期需要什么费用,腾讯会议30人以上收费相信学做Java开发的同学从开始工作时就被问及什么是spring的依赖注入#xff0c;以及切面编程。今天我们简单再聊聊这两个概念。
依赖注入
这里的依赖不是动词依赖依靠的意思#xff0c;而是名词。可以把这两个词翻过来读下”注入依赖“#xff0c;所谓的依赖可以理解成一…相信学做Java开发的同学从开始工作时就被问及什么是spring的依赖注入以及切面编程。今天我们简单再聊聊这两个概念。
依赖注入
这里的依赖不是动词依赖依靠的意思而是名词。可以把这两个词翻过来读下”注入依赖“所谓的依赖可以理解成一个类有很多属性这些属性就是这里的依赖依赖注入就是spring可以自动注入你写的这个类定义的这些属性。
有一种你只管想象或者定义而spring为你构造实现的味道。当你的工程有几百上千个类时依赖的自动注入将极大简化代码逻辑使程序员们专注于业务。
spring的aop能力
aop不是spring独创这只是一个编程思想或者方法指的是在某段程序前后执行另一段代码逻辑以满足对具有相同特性的代码逻辑做通用的处理。比如你想对所有在xxx包下的方法执行前先校验用户权限那么切面编程是最好的选择它可以为了省了在每个方法前都调用一遍权限校验的逻辑。
看似简单的两个能力spring却对其玩出了花比如依赖注入就有多种方式实现如可以设置按名称注入按类型注入或者使用构造器自动注入等又或者通过注解指定来注入注解又有不同。而在注入前的准备也是一件复杂的工作得先对需要注入的依赖进行标记而标记手段可以有很多种比如通过xml文件来配置或者通过注解来指定。标记后得读取所标记的文件还得判断被标记的文件是否符号自动注入条件比如对于抽象类无法注入等判断。
所以一个优秀的开源框架往往写的十分复杂细节考虑的方方面面代码量也会变得很大而对于那些想阅读其源码了解其原理的人来说一开始可能并不是一件容易的事。而我作为一个10年老程序员斗胆说一些自己的浅见。入行IT也是机缘巧合记得刚入行时最怕的就是ssh分别是springstructshibernate其中spring是最让我头大的真的是一点不懂无数的xml配置仿佛是天书一般让人从心底开始生畏正由于害怕导致似乎大脑开始抵触似的更难接受相关知识。而到如今到信手拈来其中的经验个人觉得简单总结就是看多了用多了熟悉了。这里的看多了我的做法是看优秀的前人写的博客不论是使用用法还是源码讲解都看还要自己尝试去阅读spring源码用多了自然是工作中无时无刻都离不开spring因为相信国内的互联网公司除了一些特别的大厂可能会自研框架代替spring大都是使用spring吧。
或许大家从中发现我这个经验似乎没有什么技巧并谈不上什么好的学习方法只是简单的日积月累式的阶梯增长罢了换任何人干个十年八年的一样可以或者比我做得更好。我觉得你这么想没毛病我是认同的因为对于spring框架来说并没有多少复杂的算法需要多聪明的大脑只要你肯花时间多看多学还是容易学的通的。
如果非要谈一些学习经验的话我也想谈谈我的看法不一定对仅供参考。
第1步找到适合自己的学习资料。很多大脑建议新人学习一个新东西时都建议去看官网官网确实是非常完整的学习资料但对很多新手来说不太友好。比如一些人英语很不好而框架官网都是英文学习起来很费劲。有些官网写的可能也并不是很时候新手入门。
我的建议是先找一些博客文章做一些简单入门了解再做打算
第2步确定学习方向。对于你想学的东西确定你想学习的深度和方向比如你希望即会用spring又可以了解ioc的原理
第3步尽量弄清楚你要学的框架的总体架构和特性看博客配合官网对其有个总体上的认识。
第4步制定目标严格执行。如前两周学会其使用方法接下来三周看完ioc相关源码。
第5步输出博客或者笔记。
第6步公司技术分享会开始装逼。