How to activate Profiles
Activated profiles must create a corresponding configuration file in the project, in the format of application-{profile}.yml.
Command line mode
The command line mode is an external configuration method. You can pass --spring.profiles when executing the java -jar command. Active=test activates the specified profiles list.
The usage method is as follows:
java -jar order-service-v1.0.jar --spring.profiles.active=dev &> order-service.log &
System variable method
Mac/Linux system configuration environment variable
Edit environment variable Configuration file /etc/profile, add an environment variable named SPRING_PROFILES_ACTIVE, as shown below:
# spring 环境激活 export SPRING_PROFILES_ACTIVE=dev
Windows system configuration environment variables
Please refer to the configuration method of environment variables Java environment variable configuration, create a new system environment variable named SPRING_PROFILES_ACTIVE, and set the value of the variable to dev.
The system variable method is suitable for SpringBoot applications deployed in a unified environment under the system. For example, all applications deployed in a unified environment are prod environment applications.
Java system property mode
Java system property mode is also an external configuration method. When executing the java -jar command, you can pass -Dspring.profiles.active= Test method activates the specified profiles list.
The usage method is as follows:
java -Dspring.profiles.active=dev -jar order-service-v1.0.jar &> order-service.log &
Note: The -D method to set Java system properties must be defined before -jar.
Configuration file method
The configuration file method is the most commonly used method, but it is not very flexible and has great limitations. It is not recommended to use this method to activate the configuration. document.
We only need to add configuration in the application.yml configuration file. The usage method is as follows:
spring: profiles: # 激活profiles active: dev
Priority
Command line method > Java system property method > System variable method > Configuration file method
After testing, the command line method has the highest priority, while the internal configuration file method is the lowest.
Activate multiple profiles
If you need to activate multiple profiles, you can use commas to separate them, such as: --spring.profiles.active=dev,test
Key points on the blackboard
Every application project will use a large number of configuration files or external configuration centers, and the activation of configuration information is an essential step and is particularly important.
It is recommended that you use system environment variables to activate the configuration of the specified profile. This method is relatively simple and can be used globally in the system (note: the global system means that all SpringBoot applications running under the system will use it. configuration), of course, it can also be specified individually using priority replacement rules.
The above is the detailed content of How to activate profiles in SpringBoot. For more information, please follow other related articles on the PHP Chinese website!