injection(注入)的意思:
Java EE提供了注入机制,使您的对象能够获取对资源和其他依赖项的引用,而无需直接实例化它们。通过使用将字段标记为注入点的注释之一来装饰字段或方法,可以在类中声明所需的资源和其他依赖项。然后容器在运行时提供所需的实例。注入简化了代码并将其与依赖项的实现分离。
资源注入
资源注入使您能够将JNDI名称空间中可用的任何资源注入到任何容器管理的对象中,例如servlet、企业bean或托管bean。例如,可以使用资源注入来注入JNDI名称空间中可用的数据源、连接器或自定义资源。
依赖注入
依赖注入使您可以将常规Java类转换为托管对象并将其注入到任何其他托管对象中。使用依赖注入,代码可以声明对任何托管对象的依赖。容器在运行时在注入点自动提供这些依赖项的实例,它还为您管理这些实例的生命周期。JavaEE中的依赖注入定义了作用域,它决定了容器实例化和注入的对象的生命周期。例如,只需要响应单个客户机请求(如货币转换器)的托管对象与在会话(如购物车)中处理多个客户机请求所需的托管对象具有不同的范围。
一些使用Java依赖注入的好处如下:
关注点分离
应用程序类中的样板代码减少,因为所有用于初始化依赖性的工作都由注入器组件处理
配置组件使应用程序易扩展 通过模拟对象来单元测试会很简单
Java依赖注入的缺点
如果过度使用,可能会导致维护问题,因为更改的影响只有在运行时才知道。
Java中的依赖注入可能会隐藏导致运行时错误的服务类的依赖性,这会在编译时被捕获。 以上就是Java中的依赖注入模式。当我们控制服务时,了解和使用它是很好的