可以使用Spring的profile来解决这个问题。profile可以用于在不同的环境下对应不同配置(例如数据库配置),可以实现你的需求。
下面配置了三个同一个bean在三个profile(dev、test、product)下的不同属性:
如何在程序启动是启用某个profile,有多种方式,选其一即可:
代码方式
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
ctx.getEnvironment().setActiveProfiles("dev");
java命令-Dspring.profiles.active="dev"
java -jar test.jar -Dspring.profiles.active="dev"
web.xml
如果是web项目,可以配置web.xml
spring.profiles.active
dev
使用不同的profile启动,就会加载不同的bean和不同的配置。