轻量级容器在为应用程序组织胶水代码方面,提供了一种方法。Spring框架在轻量级容器世界独占鳌头。它内含了轻量级容器、面向方面编程框架和可以轻而易举整合数百种开放源码框架的胶水代码。
在 2003 年的时候,三个山地自行车手和我尖叫着冲下一条叫做 Forrest Ridge 的陡峭小径。这条小径因为刚刚重新开放,没有什么宣传,因此德克萨斯州首府奥斯汀只有很少的人知道它。
整个秋天,我们都保守这个秘密,享受它带给我们的快乐。而到了今天,我们不得不在这条小径上躲避 20 个以上的车手。因为,秘密公开了!
尽管大家发现了这条奇妙的小径对于我和我的朋友而言不是好事,但是,当您的开放源码项目被人发现时,那却是一件令人欣喜若狂的事情。因为从此您就可以更易找到资源、更快修补项目缺陷,并且通常您还可以利用其他的社区资源。
现在,Spring 已经被大家所发现。它是最重要的开放源码项目之一,在企业环境的输入输出中扮演了重要角色,以它自己的方式取得了与 Hibernate 类似的辉煌成果。本文向您展示了 Spring 对于轻量级的开发为何意义如此重大。
Spring 是什么?
您若是一名企业程序开发人员,Spring 会令您事半功倍。但它到底是什么?对于这样的综合性框架,很难轻易找到一个明确的答案。
从本质上讲,Spring 是一个轻量级容器。您可以通过 Spring 来利用普通 Java 对象(POJO)编程,使用依赖注入解析 POJO 间的依赖性,然后使用面向方面编程(AOP)将服务与它们相关联。
Spring 也提供了许多胶水代码,这使您可以更加轻松地使用 Java 2 平台企业版(J2EE)服务,比如用于事务的 Java 事务 API (JTA)、用于远程控制的远程方法调用(RMI)、用于管理的 Java 管理扩展(JMX)或用于持久性的 Java 数据对象(JDO)。
Spring 还为开放源码框架,比如 Hibernate、Tapestry、Struts 和 JavaServer Faces(JSF),提供了胶水代码。注意,虽然有些框架是相互竞争的,但这并不是什么问题,Spring 没有试图只支持一种获胜的框架。
使用 Spring,使您能够利用一些服务。例如,Web Flow 可以轻松地处理 Web 页面间的流。类似地,Web MVC 为类似 Struts 的基于 Web 的应用程序提供了模型-视图-控制器(MVC)架构。
因此,Spring 支持众多的技术。与企业 JavaBean(EJB)技术一样,Spring 容器让您可使用很多企业服务。但是与 EJB 1.x 和 2.x 不一样,放入容器的是 JavaBean,而不是一些私有组件。
与 EJB 脱离的另一方面是,Spring 并不将您限制于少量标准服务,而是让您从大量服务中自由选择,甚至构建您自己的服务。
在我看来,Spring 是 Java 社区中最重要的开放源码项目之一。它帮助我们重新定义了 J2EE。在一定程度上由于来自 Spring 技术革新的压力,导致 EJB 3 专家小组构建了一个比 EJB 2.x 更加相似 Spring 的接口。
我能够轻易地想像到,在企业级程序开发中,Spring 的使用会变得同 Struts 一样普及。为帮助您了解 Spring 如此重要的原因,让我们一层层剥开它神秘的面纱。
1
2
3
4
下一页>>