我有一个可以使用服务的两种实现的应用程序:
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 配置中的配置。所以我可以在不使用时完全删除所有未使用的配置。
如何在不需要未配置实现的属性文件的情况下配置这两个实现中的任何一个?
欢迎针对此问题提供其他解决方案。
最佳答案
您可以为不同的配置文件使用配置文件和不同的 @Configuration 类。 http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#beans-definition-profiles-java
关于java - 如何使用 Spring 配置基于属性文件配置一个实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39562453/