写在最前
配置文件
新建 Spring Boot 项目后,resources 目录下有一个默认的全局配置文件 application.properties
(空文件),Spring Boot 在底层已经自动配置好了默认配置。
默认的文件类型是 .properties
,我们这边修改为 .yml
,原因是 .yml
更加灵活、简洁!
自动提示
添加如下依赖后,我们在编写自定义配置时就会有属性提示。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
代码地址
配置文件
默认属性
application.properties
文件重命名application.yml
# 默认端口 8080 修改为 8090
server:
port: 8090
重启项目测试端口变为 8090 即可!
自定义属性
Spring Boot 提供自定义配置组件,如果我们要自定义属性,可以在 application.yml
中直接配置,配置过程如下:
1.创建实体类映射配置的属性
package com.csp.mingyue.base.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/** @author Strive */
@Component
@ConfigurationProperties(prefix = "mingyue")
public class MingYueUserProperties {
private Long id;
private String name;
private String sex;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "MingYueUserProperties{"
+ "id="
+ id
+ ", name='"
+ name
+ '\''
+ ", sex='"
+ sex
+ '\''
+ '}';
}
}
2.添加自定义属性
mingyue:
id: 1
name: 明月
sex: 女
3.注入接口测试
package com.csp.mingyue.base.controller;
import com.csp.mingyue.base.config.MingYueUserProperties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/** @author Strive */
@RestController
public class MingYueController {
private static final Logger log = LoggerFactory.getLogger(MingYueController.class);
@Autowired private MingYueUserProperties mingYueUserProperties;
@GetMapping("/mingYue")
public String mingYue() {
log.info("==== into mingYue api ====");
return mingYueUserProperties.toString();
}
}
打开接口查看打印:http://localhost:8090/mingYue
MingYueUserProperties{id=1, name='明月', sex='女'}
多环境配置
实际开发过程中,需要多个环境(如 开发、测试、生产等),而不同环境的配置都不一样,Spring Boot 提供了解决方案。
1.添加开发、生产两个环境文件测试
-
开发环境:
application-dev.yml
# 开发环境 server: port: 8090
-
生产环境:
application-prod.yml
# 生产环境 server: port: 9999
2.修改
application.yml
主配置文件
# active 指定配置文件
spring:
profiles:
active: prod
3.访问测试
先访问原地址:http://localhost:8090/mingYue =》(localhost 拒绝了我们的连接请求。)
在访问生产环境【9999】端口,http://localhost:9999/mingYue ,返回数据如下:
MingYueUserProperties{id=1, name='明月', sex='女'}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/78352.html