24.4 Profile-specific properties

除了application.properties文件,profile-specific属性也能通过命名惯例application-{profile}.properties定义。Environment(Spring的环境抽象接口)有个默认profiles集合(默认情况为[default]),在没有设置激活的profiles时会被使用(例如,如果没有明确指定激活的profilesapplication-default.properties中的属性会被加载)。

Profile-specific属性加载路径和标准的application.properties相同(具体路径参见24.3 Application property files),并且profile-specific文件总是会覆盖non-specific文件,不管profile-specific文件是否被打包到jar中。

如果定义多个profiles,最后一个将获胜。例如,spring.profiles.active定义的profiles被添加到通过SpringApplicationAPI定义的profiles后面,因此优先级更高。举个例子,spring.profiles.active=dev,prod,tub那么profile tub将会是“胜利者”

如果你已经在spring.config.location下定义了具体的文件(而非目录),那些profile-specific的文件将不被考虑。如果想使用profile-specific属性,那就在spring.config.location下使用目录(具体路径参见24.3 Application property files)。

results matching ""

    No results matching ""