首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring创始人Rod Johnson:Spring为什么有今天的地位?

Spring创始人Rod Johnson:Spring为什么有今天的地位?

作者头像
老九君
发布2019-12-13 11:28:24
3.8K0
发布2019-12-13 11:28:24
举报
文章被收录于专栏:老九学堂老九学堂

在Spring作为关键词出现在每一位技术人员简历里面的今天,我们可以深刻地体会到Spring的春天真的来了。

Spring经过几年的实战和演变,已经不再是一个单纯的体系框架,而代表着轻量级Java开发的规范。

在短短几年的发展中,Spring给Java企业级开发带来了无比强大的推动力,让轻量级开发技术飞速发展。

通过Spring,我们不仅可以学到如何应对每个领域的最佳实践,而且可以深入理解Java企业级开发中各层面的体系结构。

Spring是什么?

Spring框架是一个开放源代码的J2EE应用程序框架,是针对bean的生命周期进行管理的轻量级容器(lightweight container),它解决了开发者在J2EE开发中遇到的许多常见的问题。

简单来说,Spring的目的就是为了帮助解决企业应用开发的复杂性

Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情,然而,Spring的用途不仅限于服务器端的开发。

简单性、可测试性松耦合的角度而言,任何Java应用都可以从Spring中受益,所以Spring框架自诞生以来一直备受开发者青睐。

Spring是如何诞生的呢?

时间回到 2002 年,当时正是 Java EE 和 EJB 大行其道的时候,很多知名公司都是采用此技术方案进行项目开发。

这时候有一个美国的小伙子认为 EJB 太过臃肿,并不是所有的项目都需要使用 EJB 这种大型框架,应该会有一种更好的方案来解决这个问题。

他为了证明自己的想法是正确的,在 2002 年 10 月写了一本书《Expert One-on-One J2EE》,介绍了当时 Java 企业应用程序开发的情况,并指出了 Java EE 和 EJB 组件框架中存在的一些主要缺陷。

这个小伙子是谁呢?

他就是Rod Johnson。

Rod Johnson 在悉尼大学不仅获得了计算机学位,同时还获得了音乐学位,更令人吃惊的是在回到软件开发领域之前,他还获得了音乐学的博士学位。

现在 Rod Johnson 已经离开了 Spring,成为了一个天使投资人,同时也是多个公司的董事,早已走上人生巅峰。

(Rod Johnson)

Rod Johnson根据多年经验撰写的《Expert o-ne-on-One J2EE Design and Development》,其中对正统J2EE架构的臃肿、低效的质疑,引发了人们对正统J2EE的反思。

这本书也体现了Rod Johnson对技术的态度,技术的选择应该基于实证或是自身的经验,而不是任何形式的偶像崇拜或者门户之见,也正是这本书真正地改变了Java世界。

基于这本书的代码,Rod Johnson创建了轻量级的容器Spring,Spring的出现,使得正统J2EE架构一统天下的局面被打破。

基于Struts+Hibernate+Spring的J2EE架构也逐渐得到人们的认可,甚至在大型的项目架构中也逐渐开始应用,这也真正改变了Java世界。

Spring都有哪些特点呢?

1.方便解耦,简化开发

通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。

有了Spring,用户不必再为单实例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。

2.AOP编程的支持

通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。

3.声明式事务的支持

在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。

4.方便程序的测试

可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。

例如:Spring对Junit4支持,可以通过注解方便的测试Spring程序。

5.方便集成各种优秀框架

Spring不排斥各种优秀的开源框架,相反,Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts,Hibernate、Hessian、Quartz)等的直接支持。

6.降低Java EE API的使用难度

Spring对很多难用的Java EE API(如JDBC,JavaMail,远程调用等)提供了一个薄薄的封装层,通过Spring的简易封装,这些Java EE API的使用难度大为降低。

7.Java 源码是经典学习范例

Spring的源码设计精妙、结构清晰、匠心独运,处处体现着大师对Java设计模式灵活运用以及对Java技术的高深造诣,Spring框架源码无疑是Java技术的最佳实践范例。

如果想在短时间内迅速提高自己的Java技术水平和应用开发水平,学习和研究Spring源码将会使小伙伴收到意想不到的效果。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 老九学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档