`

2009依赖注入DI之争: Web beans~JSR299和Spring& Guice~JSR330

阅读更多

2009年DI之争进入白热化阶段。

 

  • 2009年2月份,以红帽Gavin King负责的、在Web beans基础上的面向Java EE平台的上下文与依赖注入规范JSR299获得JCP通过,SpringSource、Nortel弃权,其他都投赞成票。最终融合JSR330后12月份发布。
  • Google guice和SpringSource spring提出JSR330(面向Java的依赖注入)规范,开始打架了。
  • Gavin King不得为现有的庞大的spring和guice用户基础让步,采用了JSR330的一样的注解。
  • 2009年6月份,以Google guice和SpringSource spring为基础的JSR330(面向Java的依赖注入)获得通过,redhat和Nortel弃权,其他都投赞成票。10月份发布。

个人认为,JSR299和JSR330最终达成统一,JSR330最终采用JSR299的注解,是件好事。

但到底采用哪种方式更好?

  • JSR299是针对JAVA EE开发的,参考实现为Weld;其依赖注入部分的注解也采用JSR330规范。
  • JSR330是针对JAVA SE开发的,目前只有几个简单实用的 annoations;目前Spring,Guice已经开始兼容该规范;
  • JSR330规范并未按 JSR 惯例发布规范文档,只发布了规范 API 源码;
1
1
分享到:
评论

相关推荐

    spring3.1 jar全集

    另外,Spring 3.1对JSR-330依赖注入规范的全面支持,使得与Google Guice等其他依赖注入框架的互操作性得到增强。 总的来说,这个"spring3.1 jar全集"包含的是一套完整的Spring开发工具,涵盖了从核心功能到高级特性...

    SSM整合所需Jar包

    同时,它支持了JSR 330的依赖注入标准,使得与其他DI库如Guice的互操作性更强。 2. **Spring MVC**: 作为Spring的一部分,Spring MVC提供了一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。Spring4.0引入了...

    spring 4.0 jar包.zip

    同时,增强了对JSR-330标准注解(如`@Inject`和`@Provider`)的支持,与Google Guice等其他依赖注入框架更好地集成。 - Bean后处理器(BeanPostProcessor)和初始化回调(InitializingBean)接口的改进,使开发者能...

    struts2.1+spring2.5+hibernate3.2项目基本jar包

    **Spring** 是一个全面的企业级应用框架,核心功能包括依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)。Spring2.5.x版本引入了对JSR-303(Java Bean Validation)的支持...

    web bean官方手册(简体中文版+繁体中文版+英文原版)

    Web Beans(JSR-299)规格为 Java EE 环境定义了一组简化应用程序开发的服务。Web Bean 针对于现有的 Java 组件类型(包含 JavaBeans 以及 Enterprise Java Beans)提供了增强的生命周期与互动模型(interaction ...

    Java EE 6 Overview 新特性

    - **WebBeans 1.0**:WebBeans 是一种新的依赖注入框架,源自 Seam、Google Guice 和 Spring 等项目。它将 JSF、JPA 和 EJB 3 等编程模型统一起来,使开发者可以在一致的环境中工作。WebBeans 提供了一种类型安全的...

Global site tag (gtag.js) - Google Analytics