认识Spring


1,Spring的简单概述

Spring在英文里面本来的含义是春天的意思。Spring框架用Spring命名也是非常非常贴切的。它为我们软件开发也带来了春天。

在老师看来Spring是Java领域最成功的的框架。在企业实际应用中。基本上所有的项目都会使用到Spring。Spring之所以成功,来自原它的理念,它最核心的概念就是Ioc(控制翻转)和Aop(面向切面编程),其中Ioc是Spring的基础,而Aop是最重要的功能。并且Spring还能整合开源社区几乎所有的第三方框架和类库。所以,我们一定要学习它。

老师工作这么多年,我看到的框架也是很多了,比如之前的strtus2,hibernate等等一些框架,肯能会火一段时间,然后就慢慢的消亡了。但是我们的Spring从推出开始,一直到今天,越来越好。所以说它真的是非常重要。面试的时候,大篇幅的问题你。


2,Spring的发展历史

  • 1997年IBM提出了EJB的思想
  • 1998年SUN制定开发标准规范EJB1.0
  • 1999年,EJB1.1 发布
  • 2001年,EJB2.0 发布
  • 2003年,EJB2.1 发布
  • 2006年,EJB3.0 发布
  • Rod Johnson(spring作者)
  • Expert One-to-One J2EE Design and Development(2002)
  • 阐述了 J2EE 使用 EJB 开发设计的优点及解决方案
  • Expert One-to-One J2EE Development without EJB(2004)
  • 阐述了 J2EE 开发不使用 EJB 的解决方式(Spring 雏形)
  • 目前Spring的版本的5.x

3,学习和使用Spring的好处

学习Spring的好处那简直是太多了。老师给大家归纳了几点如下:

方便解耦,简化开发

通过Spring提供的IoC容器,可以将对象间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。

AOP 编程的支持

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

声明式事务的支持

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

方便程序的测试

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

方便集成各种优秀框架

Spring可以降低各种框架的使用难度,提供了对各种优秀框架(Struts、Hibernate、Hessian、Quartz、mybatis等)的直接支持。

降低 JavaEE API 的使用难度

Spring对JavaEE API(如JDBC、JavaMail、远程调用等)进行了封装,使这些 API 的使用难度大为降低。

Java 源码是经典学习范例

Spring 的源代码设计精妙、结构清晰、匠心独用,处处体现着大师对Java设计模式灵活运用以及对 Java 技术的高深造诣。它的源代码无意是 Java 技术的最佳实践的范例。以后高级课程,我们会专门有节课就是分析Spring源码。