领先一步
VMware提供培训和认证,以加快您的进度。
了解更多我是在前往开罗的途中写的这篇文章。我们正在意大利西海岸上空飞行,我可以清楚地看到意大利海岸线,碧蓝的海水和轻轻拍打海岸的波浪。现在那里一定很美。我正前往开罗参加由Ahmed Hashim组织的埃及用户组(Egyptian User Group)会议,他无疑会做得很好,我对此深信不疑。我将介绍Spring,这次的主题是依赖注入、类型安全和Java 5。昨天(3月14日),我在荷兰Loenen的Profict冬季营为大约60到70人的听众做了几乎相同的演讲。
最近,关于类型安全、Spring和其他依赖注入方法有很多讨论。我经常发现人们提到Spring的依赖注入功能不是类型安全的,更糟糕的是,有些人认为Spring依赖于XML。由于我不能一直看着飞机窗外(好吧,我可能可以,但这并没有什么用),我想写一篇简短的博客文章,介绍Spring和Java 5依赖注入的现状。
随着Spring 2.5中新增功能以及Spring的子项目JavaConfig的加入,Spring依赖于XML以及其依赖注入不具备类型安全的论点根本就不成立了。虽然过去我们*一直说*Spring不依赖于XML,但表达配置细节的唯一可行选项*确实是XML*。但自从Spring 2.5以来,这不再是一个理论上的论点;现在可以使用纯Java配置依赖项的实用选项。
JavaConfig方法也在各种博客文章中进行了更详细的介绍
正如我在Loenen和开罗的会议上所说的那样,Spring JavaConfig 尚未完成。还需要完善一些细节,才能创建一个流畅的DI语言,支持基于XML的DI语言所具有的所有功能。如果您愿意,您可以在这里帮助我们很多。尝试使用Spring JavaConfig并告诉我们您的想法!
代码也已附加。它依赖于JTA API(演示使用Hibernate),该API未安装在Maven存储库中。Lucio Benfante 已经写博客介绍了解决这个问题的方法(在本地存储库中安装JTA API)。
安装JTA API后,运行com.carplant.plant包中的CarPlantIntegrationTests,并阅读该类的注释。这解释了如何启用JavaConfig、Autowire配置和XML配置(JavaConfig已默认启用)。
[更新]添加了关于JavaConfig的更多资源