JSR330 DI与Spring DI

JSR330 DI与Spring DI,spring,guice,Spring,Guice,为什么人们使用Spring DI和JSR330 DI?我看到许多项目仍在高速发展,SpringDI对JSR330规范一无所知。许多人甚至不知道它的存在。它的市场营销不够,而spring是 我确实看到过Guice vs.spring的文章,但真正的论据应该是JSR330 vs.spring,因为spring还没有实现规范(希望有一天它会实现)。关于为什么社区中如此大的一部分人似乎对JSR330漠不关心,而不适应它,有什么想法吗 注意:我应该在这里进行更正。Spring3.0确实实现了JSR330,

为什么人们使用Spring DI和JSR330 DI?我看到许多项目仍在高速发展,SpringDI对JSR330规范一无所知。许多人甚至不知道它的存在。它的市场营销不够,而spring是

我确实看到过Guice vs.spring的文章,但真正的论据应该是JSR330 vs.spring,因为spring还没有实现规范(希望有一天它会实现)。关于为什么社区中如此大的一部分人似乎对JSR330漠不关心,而不适应它,有什么想法吗


注意:我应该在这里进行更正。Spring3.0确实实现了JSR330,甚至可以像guice一样覆盖默认绑定,只是您必须提供xml文件而不是用java编写的模块文件

我认为这是因为Spring不仅仅是一个简单的DI容器。许多团队使用Spring还有以下各种原因:

  • 事务管理
  • 保安
  • MVC
  • 方面
  • 数据存取
  • 批处理
  • 网络流量
  • 网络服务

他们在很多方面都有自己的经验,这使得混合和匹配Spring技术来进行一般的企业开发变得非常容易。

Spring 3.X支持JSR-330开箱即用-


这意味着您可以使用spring注释或JSR-330注释。

HUH????我看不到任何地方使用{@javax.inject.inject}或其他JSR330注释??所以我很困惑?你能详细说明一下吗?@DeanHiller看一下类
AutowiredNotationBeanPostProcessor
。此类用于通过查找有效的autowire注释来自动连接bean。您会注意到,在构造函数中,他们试图使用
ClassLoader.loadClass(String)
加载类。虽然我现在仍在努力让它工作,但我最终还是找到了这篇文章。提供程序、Inject、Singleton的一切都很好,除了“@Inject@Named(“propertyName”)”似乎不起作用之外:(.也许我们必须改变属性的加载方式。@DeanHiller太好了!很抱歉,我在这一点上帮不了你。也许值得再问一个问题,所以?