框架学习【Spring Boot】-属性文件 - 东南西北

东南西北

整理 思考 行动

框架学习【Spring Boot】-属性文件

首页 编程 0 评

问题1

假如我们不想用8080端口,该如何修改。

解决方法

在源码resources里的application.properties,增加

server.port = 80

问题2

假如我们需要增加配置属性,并在java中调用如何处理?

解决方法

首先在application.properties中定义name=spring boot ,注意在application.properties中属性是无类型的。
在java中

    @Value("${name}")
    private String name;
问题3 --- 假如我们需要增加配置对象(一个一个配置属性并读取太累了),如何读取这个配置对象?

解决方法

在application.properties中定义

app.name=spring boot
app.edition = prod

并定义一个bean,如下:

package com.weiming.demoserver.model;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@ConfigurationProperties(prefix = "app")
@Component
public class AppProperties {
    private String name;
    private String edition;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEdition() {
        return edition;
    }

    public void setEdition(String edition) {
        this.edition = edition;
    }
}

在调用类中:

 @Autowired
    private AppProperties app;

这样app对象中,便自动获取了配置中的值。

问题4

假如我在开发中定义个配置文件,在生产环境中配置另外一个配置文件,在项目运行时如何按需运行?

解决方法

在resources中另外定义两个配置文件application-dev.properties(开发时使用)和application-prod.properties(运行时运行),并在application.properties中定义spring.profiles.active既可,比如spring.profiles.active=dev,就是加载开发的配置文件。

框架学习【Spring Boot】-测试用例