我很高兴地宣布,CDI 1.1 已可用,并包含在 Java EE 7 中。如果您想了解更多信息,请继续阅读,并参加6月12日的网络研讨会,了解Java EE 7中的所有技术。这两个网络研讨会都包括问答环节,届时CDI专家将回答您的问题。网络研讨会时间:[太平洋时间上午9点 / 美国东部时间中午12点 / 伦敦时间下午5点] 或 [太平洋时间晚上9点 / 美国东部时间凌晨12点(周四) / 悉尼时间下午2点(周四)]
那么,CDI 1.1 中有什么新内容?
- 添加全局启用拦截器(请参阅Java Interceptors规范1.2),全局启用装饰器(请参阅https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#enabled_decorators_priority)和替代方案(请参阅https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#unsatisfied_and_ambig_dependencies)使用@Priority注解
- 添加对构造函数的@AroundConstruct生命周期回调的支持(请参阅Java Interceptors规范1.2)
- 允许将拦截器绑定到构造函数
- 将拦截器绑定移动到拦截器规范中,允许其他规范重用
- 支持内置bean上的装饰器(请参阅https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#decorators)
- 添加EventMetadata(请参阅https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#event_metadata),以便检查事件元数据
- 添加@Vetoed注解,允许轻松程序性地禁用类(请参阅https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#what_classes_are_beans)
- 针对钝化功能强大的豆类进行了许多改进,包括@TransientReference允许实例仅在调用的方法或构造函数中使用(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#passivation_capable_injection_points和https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#passivating_scope)
- 添加作用域激活和销毁回调事件(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#builtin_contexts)
- 添加AlterableContext,允许显式销毁豆实例(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#context)
- 在Java EE中自动启用具有作用域注解的豆和EJB的CDI(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#bean_discovery)
- 将类排除过滤器添加到beans.xml以防止扫描类和包(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#bean_discovery)
- 添加Unmanaged,允许轻松访问非上下文实例的豆(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#bm_obtain_unmanaged_instance)
- 添加CDI,允许轻松访问当前CDI容器(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#provider)
- 添加AfterTypeDiscovery事件,允许在类型发现之后注册额外的类型(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#atd)
- 添加@WithAnnotations作为提高扩展加载性能的方式(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#pat)
- 对可移植扩展进行了许多小的改进(参见https://docs.jboss.net.cn/cdi/spec/1.1/cdi-spec.html#spi)
试试它并了解更多
- Weld 2是CDI 1.1的参考实现,可在WildFly 8 Alpha 1中找到。
- http://cdi-spec.org是CDI的官方网站,包含有关CDI 1.1的更多信息。