SpringBoot学习笔记三之【多Profile文件的Maven发布使用】

在springboot工程中配置文件编写的时候可以使用application-{profile}.properties/yml,默认使用application.properties/yml,例如:

SpringBoot学习笔记三之【多Profile文件的Maven发布使用】_第1张图片

每个环境配置如下:

#application-dev.properties
server.port=8080
#application-test.properties
server.port=8082
#application-dev.properties
server.port=80

我们可以在application.properties/yml指定激活哪个环境的配置文件,我们在发布的时候最终都是读取application.properties/yml中的配置:

#yml
  spring:
    profiles:
      active: @profiles.active@ # 和我们pom.xml中的指定resource配置相同
#properties
spring.profiles.active=dev

pom.xml配置如下:


        
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.springframework.boot
            spring-boot-configuration-processor
            true
        
    
    
    
        
            
                src/main/resources
                
                true
            
            
            
                ${project.basedir}/src/main/profiles/${profiles.active}
            
        
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    

    
        
            dev
            
                dev
            
        

        
            test
            
                test
            
        

        
            prod
            
                prod
            
        
    

或者我们通过命令行指定:

java -jar springboot-swk.jar --spring.profiles.active=dev
#使用maven打包命令
mvn clean package -Dmaven.test.skip=true -P prod

配置文件的加载位置优先级由高到低如下,并且高优先级覆盖低优先级,高优先级没有的配置使用低优先级互补

-file:./config/
-file:./
-classpath:/config/
-classpath:/

我们也可以通过在application.properties中修改加载文件的位置

spring.config.location=

当我们把配置都准备完毕之后,在idea右侧会出现Profiles选项如下:

SpringBoot学习笔记三之【多Profile文件的Maven发布使用】_第2张图片

这样我们就可以选中不同profile环境,然后执行install执行打包

当我们选中dev时,启动生成的jar

SpringBoot学习笔记三之【多Profile文件的Maven发布使用】_第3张图片

当我们选中prod时

SpringBoot学习笔记三之【多Profile文件的Maven发布使用】_第4张图片

如果我们打包时想跳过测试,右击install,选择create

SpringBoot学习笔记三之【多Profile文件的Maven发布使用】_第5张图片

你可能感兴趣的:(架构设计)