JSR-330 依赖注入可以应用于 Java SE 和 Java EE 环境,而 JSR-299 的标题是“Java EE 平台的上下文和依赖注入”。
除了严格面向 Java EE 的特性外,还有哪些 CDI 特性对 Java SE 有意义?有可用的例子吗?谢谢!
[修订] 这是JSE 上的 Weld。
JSR-330 依赖注入可以应用于 Java SE 和 Java EE 环境,而 JSR-299 的标题是“Java EE 平台的上下文和依赖注入”。
除了严格面向 Java EE 的特性外,还有哪些 CDI 特性对 Java SE 有意义?有可用的例子吗?谢谢!
[修订] 这是JSE 上的 Weld。
除了严格面向 Java EE 的特性外,还有哪些 CDI 特性对 Java SE 有意义?有可用的例子吗?谢谢!
好吧,Weld 文档中提到的那个:
18.4. Java SE
除了改进了企业 Java 堆栈的集成之外,“Java EE 平台的上下文和依赖注入”规范还定义了一个最先进的类型安全、有状态的依赖注入框架,它可以证明在广泛的应用程序类型中很有用。为了帮助开发人员利用这一点,Weld 提供了一种在 Java 标准版 (SE) 环境中独立于任何 Java EE API 执行的简单方法。
在 SE 环境中执行时,Weld 的以下功能可用:
- 带有 @PostConstruct 和 @PreDestroy 生命周期回调的托管 bean
- 带有限定符和替代方案的依赖注入
- @Application、@Dependent 和 @Singleton 范围
- 拦截器和装饰器
- 刻板印象
- 活动
这在 Java SE 上下文中显然是有意义的。
参见 openwebbeans.apache.org