• 005 profile


    一 .概述

      在我们之前的属性文件之中有一个问题,就是我们在开发和测试环境下需要不断的修改属性文件.

      在springboot为了解决这个问题,提供了profile的方式解决这个问题.


    二 .演示

      我们首先创建三个配置文件,分别是application.properties,application-dev.properties,application-test.properties.

    这三个配置配置文件分别代表总配置文件,开发环境和测试环境.

      我们看看里面的内容:

    application.properties

    spring.profiles.active=dev

    application-dev.properties

    server.port=8888

    application-test.properties.

    server.port=9999

    上面的配置信息表示开启dev的环境,现在我们启动项目看看端口号是多少.  

    我们发现是8888.然后,我们修改激活test环境.

      我们发现现在端口就变成了9999.


     三. 通过profile环境注入不同的bean ,使用@Profile  

    @Configuration
    public class ProfileConfig {
    
        @Bean("username")
        @Profile("dev")
        public String usernameDEV() {
            return "dev";
        }
    
        @Bean("username")
        @Profile("test")
        public String usernameTEST() {
            return "test";
        }
    }

    上面的内容表示,我们在dev环境下注入dev,在test环境下注入test.

      我们下面进行测试:  

    @SpringBootTest(classes = SpringbootRunnerClass.class)
    @RunWith(SpringRunner.class)
    public class ProfileTest {
    
        @Autowired
        @Qualifier("username")
        private String username;
    
        @Test
        public void test() {
            System.out.println(username);
        }
    }

    我们通过修改激活状态,来激活不同的配置.我们发现现在我们通过profile属性来切换不同的配置了.


     四 .最佳实践

      通过上面的方式,我们了解到如何通过profile来完成环境的切换.

      那么,我们一般会将公共的属性方式在总配置文件,将不同的配置放在其他的属性文件之中,这样,我们就能通过切换激活状态来完成项目整体的配置信息的切换.  

  • 相关阅读:
    MyBatis insert 返回主键的方法
    Linux实时网络监控工具:iftop
    深入理解Spring MVC 思想
    spring启动时加载字典表数据放入map
    mysql PROCEDURE ANALYSE() 用法
    http://www.cnblogs.com/shihaiming/
    maven 多模块项目
    分布式存储 CentOS6.5虚拟机环境搭建FastDFS-5.0.5集群(转载-2)
    Nginx1.8.0版本平滑升级新版本1.9.7
    Linux 添加Nginx 到 service 启动
  • 原文地址:https://www.cnblogs.com/trekxu/p/9739458.html
Copyright © 2020-2023  润新知