【发布时间】:2017-01-26 12:15:18
【问题描述】:
我有一个可以使用两种服务实现的应用程序:
package test;
public interface MyService {
void doSomething();
}
package test;
public class MyServiceA implements MyService {
private final String whatever;
public MyServiceA(final String whatever) {
this.whatever = whatever;
}
@Override
public void doSomething() {
System.out.println("MyServiceA did "+whatever);
}
}
package test;
public class MyServiceB implements MyService {
private final String what;
public MyServiceB(final String what) {
this.what = what;
}
@Override
public void doSomething() {
System.out.println("MyServiceB did "+what);
}
}
具有不同的配置。
我想选择与系统属性一起使用的实现。
我想在自己的属性文件和自己的 spring 配置中拥有每个实现的配置。所以我可以在不使用时将所有未使用的配置完全删除。
如何在不需要未配置实现的属性文件的情况下配置这两种实现中的任何一种?
欢迎其他解决此问题的方法。
【问题讨论】: