我学习Java EE已经一段时间了,发现Java EE提供了两种注入机制:
- 资源注入
- 依赖注入
请指导我理解资源注入和依赖注入之间的区别。
我学习Java EE已经一段时间了,发现Java EE提供了两种注入机制:
请指导我理解资源注入和依赖注入之间的区别。
根据来源:
资源注入允许您将JNDI命名空间中可用的任何资源注入到任何受容器管理的对象中,例如servlet、企业bean或托管bean。例如,我们可以使用资源注入来注入数据源、连接器或JNDI命名空间中的任何其他所需资源。
依赖注入允许我们将常规Java类转换为托管对象,并将它们注入到任何其他托管对象中(由容器管理的对象)。
资源注入和依赖注入之间的区别如下所列。
资源注入可以直接注入JNDI资源,而依赖注入无法直接注入。
依赖注入可以直接注入常规类(托管bean),而资源注入不能。
资源注入通过资源名称解析,而依赖注入通过类型解析。
依赖注入是类型安全的,而资源注入不是。
@Produces
将普通的 Java EE 资源注入转换为 "类型安全" 的依赖注入。 - Martin Andersson