2017-01-12 159 views
0

我是Spring的新手,我想开始使用依赖注入。多个类的弹簧依赖注入

我有很多类,它们拥有依赖关系作为接口引用,我用作为参数发送给构造函数的对象填充它们。

我知道我可以分别配置每个类来为特定实现注入每个依赖项,但这意味着如果我想要将特定依赖项的实现更改为所有类,那么我需要更改每个类,我想成为能够在一个地方为所有班级做到这一点。

这样做的最好方法是什么?

+1

我不太明白。通常情况下,你只需要在一个地方更换你的bean,并且它随处可见。为什么你需要改变注入bean的类中的任何东西?如果你发布一些代码来说明你的问题,可能会很好。 – lexicore

+0

例如,如果我有跨应用程序的多个类中的通知接口,并且我有EmailNotification实现,但现在我写了SMSNotification,而我想用它来代替。 –

回答

1

在你的类,你会注入接口:

public class Foo { 

    @Autowried 
    private Boo boo; 
} 

然后,你将控制其植入被添加到Spring容器:

@Service 
public class BooImpl implements Boo { 

} 

现在,所有你需要做的是改变实现。

如果可能的话,我会用春天开机,您可以下载例子并运行马上https://spring.io/guides/gs/spring-boot/

+0

有人也可以添加我需要为此编写的beans.xml吗? –

+0

@GiladBaruchian我已经更新了我的答案,看看Spring Boot的例子。 –