(03) spring Boot 的配置

Posted vczh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(03) spring Boot 的配置相关的知识,希望对你有一定的参考价值。

1. spring boot 的核心配置

spring boot 项目建立之后,已经创建好了application.properties 配置文件

image

其实, 配置文件还支持*.yml 格式的;

2. 多配置环境的配置文件(实际开发)

application-dev.properties

application-test.properties

application-online.properties

多环境的配置文件, 这时候我们需要在application.properties配置一下, 激活其中某个配置文件, 具体配置如下:

spring.profiles.active=dev (开发环境)

那么问题来了, 如果开发环境中配置端口8089, application.properties中也配置了8080, 最终是生效开发环境8089的端口

3. spring boot的自定义配置文件

在application.properties 里面配置好你想要的配置, 之后在cotnroller中使用@value注解获取自定配置的值

image

然后在controller中获取

image

另外一种读取自定义配置的方法

定义一个类, 然后读取值到这个类的属性中, 之后调用类的属性获取配置

/**
 * 定义自定属性中的值
 */
@Component
@ConfigurationProperties(prefix = "boot")
public class ConfigInfo {
    private String country;
    private int age;

    public String getCountry() {
        return country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
@Controller
public class ConfigController {
    @Value("${boot.country}")
    private String country;

    @RequestMapping("/boot/config")
    public @ResponseBody String config(){
        return country;
    }

    @Autowired
    private ConfigInfo configInfo;
    @RequestMapping("/boot/config2")
    public @ResponseBody String config2(){
        return configInfo.getCountry() + configInfo.getAge();
    }
    
}

以上是关于(03) spring Boot 的配置的主要内容,如果未能解决你的问题,请参考以下文章

解决spring-boot启动中碰到的问题:Cannot determine embedded database driver class for database type NONE(转)(代码片段

Spring Boot部署JAR文件瘦身优化经验分享

spring boot slf4j日记记录配置详解

Spring Boot学习记录03_一些属性配置文件

一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式

一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式