领先一步
VMware 提供培训和认证,助您加速进步。
了解更多上周我在亚特兰大的一家Barnes & Noble书店里发生了这件事。我绕到电脑区,开始浏览书名。我头微倾,无意中听到一段关于工作机会的对话。我没有主动去听,但我知道一方在推销工作,另一方在询问。
几分钟后,只剩下我和那位寻找人才的先生。我确信他会开口。不久后,他问道:“所以你是做 J2EE 的?” 谈话就这样开始了。他问了我关于我的工作。他对 Interface21 并不了解,但在得知这是 Spring 背后的公司后,他的脸上露出了光彩。他说他还没有尝试过 Spring,然后补充说他目前正在使用 Struts。
Spring 和 Struts 的关联在之前已经出现过几次了。人们听说过 Spring MVC 但对 Spring 的其他部分却知之甚少,这种情况并不少见。对另一些人来说,Spring 主要是一个依赖注入的框架。考虑到 Spring 所涵盖的范围,所有这些都让我思考,如何才能最好地向那些还不熟悉它的人定义它是什么?
或许详细谈论 Spring 比简洁地定义它更容易,但这里是一个尝试。我挑战你用更少的词来做到这一点,只要你想象你在和书店里的那位先生说话。
Spring 旨在对普通对象进行依赖注入。你不需要自己创建对象,而是告诉像 Spring 这样的框架,并让它为你配置这些对象。我说“普通”是为了强调这些对象并不了解 Spring。听起来很简单?一旦你这么做了,你就可以通过代理机制打开通往强大的 AOP 式服务的大门,这个机制会拦截对你对象的调用,并以透明的方式添加行为。想要事务的标记或访问远程服务而不“污染”你的业务对象?只需添加几行配置(无需编码!)即可轻松实现。Spring 一遍又一遍地使用这个公式,来提供对安全、事务、远程调用以及许多其他传统上难以实现的企业的透明访问服务。
所以,请仔细看看。这只是一个开始。还有更多可以说的,但在我看来,以上内容抓住了它的精髓,描绘了一幅更接近 Spring 本质的画面。从另一个层面来说,Spring 旨在保持事物的简洁和最小化。