parent properties for application-{profile}.properties with Spring-Boot app -
there common properties shared among different profiles e.g. path location temp files , path remains same among different env(tst,prd).
is there way have parent application-{parent}.properties profile specific properties files can inherit properties.
that in avoiding writing same properties in application-{profile}.properties
in addition, each application-{profile}.properties have :
profilelocation=xxx abc=${profilelocation}/temppath here can move abc common location? cannot in application.properties gets loaded before application-{profile}.properties
actually, not entirely true application.properties loaded before others. processed together. set common properties used profiles, should use ordinary application.properties file. 2 main thing should know described below.
case 1. keys placed inside application.properties file can overridden profile specific configuration.
common.path.for.all.envs=/some/path default.path=/another/path than in e.g. application-dev.properties can override values.
default.path=/dev/path at runtime dev profile application have access 2 keys. value of common.path.for.all.envs set /some/path declared in main file , default.path set /dev/path because override property in profile configuration.
case 2. values defines in application.properties file can use placeholders values included in profile configurations. instance, in application.properties define following variable:
abc=${profilelocation}/temppath next, in application-dev.properties declare missing variable:
profilelocation=xxx then running dev profile value of abc set xxx/temppath. see, variable declared in profile configuration can used in main application.properties file well.
Comments
Post a Comment