1 spring profile
特点是在程序运行时指定运行参数。
定义好不同环境的配置文件,当程序运行时可以在不同的地方指定spring.profiles.active,来使用哪个环境的profile。具体可以在这几个地方:
- 作为SpringMVC中的DispatcherServlet的初始化参数
- 作为Web 应用上下文中的初始化参数
- 作为JNDI的入口
- 作为环境变量
- 作为虚拟机的系统参数
- 使用@AtivceProfile来进行激活
如果当spring.profiles.active属性被设置时,那么Spring会优先使用该属性对应值来激活Profile。当spring.profiles.active没有被设置时,那么Spring会根据spring.profiles.default属性的对应值来进行Profile进行激活。如果上面的两个属性都没有被设置,那么就不会有任务Profile被激活,只有定义在Profile之外的Bean才会被创建。
2 maven profile
特点在于项目构建,通过命令来构建不同环境的包
3 其它
任然需要事先制定不同的配置文件。
关键是指定特定环境文件的方式,例如使用脚本程序通过改变配置文件名来使文件合法。