1.偏头痛杨的spring教学系列之基本概念篇

版权声明:偏头痛杨:本文为博主原创文章,未经作者允许不得转载,版权必究! https://blog.csdn.net/piantoutongyang/article/details/82958941

前戏

spring可谓是java后端开发最重要的框架之一,属于龙头老大,
占据统治地位,并一直与时俱进,引领时代的标杆之作。
struts会过时,hibernate会过时,spring会过时吗?不存在的。

spring从很早以前比较流行的2.x版本一路飙升到现在的spring5,
先是干掉了饱受诟病的ejb,后来又衍生出了springmvc干掉了struts、jsf之流,
然后是spring data系列加速淘汰hibernate,
到再后来javaweb开发的颠覆者springboot,
最后到佛法无边的spring cloud微服务。。。
可以说这十多年的发展,spring一直是一个领导者,引领时代的进步。

spring现在已经发展&延伸出很多附属品,甚至有spring自己的ide,
包括像什么spring integration、spring security、spring batch、spring flo、
spring kafka、spring roo等等。

如果一个人能把spring的东西全部研究明白并深入源码级别,
那这个人在我这里定义就是神一样的存在。
有兴趣的童鞋可以访问一下spring的官网:spring.io,去一探究竟。

当然,我们大多数只是一个普通人,本系列文章中,
我只会foucs在spring framework中的一些常见的知识点,
希望可以起到抛砖引玉的作用。




什么是spring框架

spring是由rod johnson大神于2003年开发并发布了第一个版本,
经历了数十年的发展,spring系列框架已经成为javaweb开发中最不可或缺的一部分。

spring框架是为我们来服务的,类似一个通用的轻量级解决方案,
spring抽出来许多常用的功能&通用的步骤让大家来使用从而减少重复的代码,
让大家把精力更专注于业务上,而并非是重复造轮子上,
让我们更便捷的开发,从而进一步提升开发效率。

那么问题来了,不用spring可以吗?可以鸭,这样你的开发效率就不高了。

如果要我归纳spring最核心的东西是什么?
1.控制反转&依赖注入,把依赖的控制权交给容器,让容器去管理bean的生命周期;
2.AOP,把通用的行为(安全&事务&日志等)横切出来,形成切面,更高级的抽象;
3.事务处理,不用自己傻傻的去写事务提交与回滚;
4.大量的注解&零配置,简化大家的开发;
5.无缝与各种框架结合使用,例如mybatis、springmvc、springboot等;
6.允许用户只使用spring的某一部分,不会强制用户;




总结

学好spring,尤其是下探至spring源码级别,
甚至能手写出来一个简陋的spring,是java后端的一项包赚不亏的投资。
很少有大厂的面试官不问你spring的知识点,
综上所述,学好spring,是java后端必须要通关的游戏。

本问提到的一些概念例如依赖注入&控制反转、容器、AOP等知识点,
都会在后面的文章中逐一为大家揭开其神秘的面纱。

猜你喜欢

转载自blog.csdn.net/piantoutongyang/article/details/82958941