SpringBoot(二)SpringBoot多环境配置

Spring框架常用注解简单介绍
SpringMVC常用注解简单介绍
SpringBoot(一)创建一个简单的SpringBoot工程
SpringBoot(二)SpringBoot多环境配置
SpringBoot(三)SpringBoot整合MyBatis
SpringBoot(四)SpringBoot整合 Redis

SpringBoot配置文件介绍

SpringBoot的配置文件用于配置SpringBoot程序,有两种格式的配置文件:

  1. .properties文件
  2. .yml文件
创建application.properties配置文件

.properties配置文件

复制代码
# 设置端口号
server.port=8080
# 设置服务名称
spring.application.name=service-product

# 设置上下文,设置后访问服务时需要在url前面拼上设置的内容,这里一般设置为服务名称
spring.server.context-path=/springbootdemo
server.servlet.context-path=/springbootdemo

启动工程,然后打开浏览器输入:http://localhost:8080/springbootdemo/product/12

SpringBoot多环境配置

我们可以指定SpringBoot的激活配置文件。如果主配置文件中指定了激活的配置文件,那么即使在主配置文件中指定了配置信息,还是优先使用激活文件中的配置信息,如果激活文件中没有,就去主配置文件中去查找。

我们先创建多个环境的配置文件

配置文件

  1. application-dev.properties

    server.port=8081
    spring.application.name=service-product

    spring.server.context-path=/springbootdemo
    server.servlet.context-path=/springbootdemo

  2. application-test.properties

    server.port=8082
    spring.application.name=service-product

    spring.server.context-path=/springbootdemo
    server.servlet.context-path=/springbootdemo

  3. application-pro.properties

    server.port=8088
    spring.application.name=service-product

    spring.server.context-path=/springbootdemo
    server.servlet.context-path=/springbootdemo

  4. 修改application.properties,指定激活的配置文件

    设置端口号

    #server.port=8080

    设置服务名称

    #spring.application.name=service-product

    设置上下文,设置后访问服务时需要在url前面拼上设置的内容,这里一般设置为服务名称

    #spring.server.context-path=/springbootdemo
    #server.servlet.context-path=/springbootdemo

    #指定激活的配置文件
    spring.profiles.active=dev

打开浏览器输入:http://localhost:8081/springbootdemo/product/12(此时访问的是dev环境,端口变成了8081)

SpringBoot自定义配置

我们可以再SpringBoot配置文件中添加一些自定义配置,然后通过@Value读取配置的属性值。

复制代码
## 设置端口号
#server.port=8080
## 设置服务名称
#spring.application.name=service-product
#
## 设置上下文,设置后访问服务时需要在url前面拼上设置的内容,这里一般设置为服务名称
#spring.server.context-path=/springbootdemo
#server.servlet.context-path=/springbootdemo

#指定激活的配置文件
spring.profiles.active=dev

#自定义配置
product.name=SpringBootDemo

使用@Value在Dao中读取自定义配置的属性值

复制代码
@Repository
public class ProductDao {

    @Value("${product.name}")
    private String name;

    public Product getProductById(String id) {
        Product product = new Product();
        product.setId(id);
        product.setName(name);
        product.setPrice(13.6);
        return product;
    }

}

启动工程,然后打开浏览器输入:http://localhost:8081/springbootdemo/product/12

接口返回:

复制代码
{
"id": "12",
"name": "SpringBootDemo",
"price": 13.6
}

最后编辑于:2020-08-19 16:27
© 著作权归作者所有,转载或内容合作请联系作者

喜欢的朋友记得点赞、收藏、关注哦!!!

相关推荐
YSL07012416 分钟前
一文通关-----排序
数据结构·算法
天河归来10 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
HideF10 小时前
Linux sudo
linux
FlightYe10 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
Knight_AL10 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
ZhengEnCi11 小时前
GPT-6 Astra 爆改 Qwen 权重真有那么神吗:权重空间编程 0.016% 参数的真相
算法·架构
罗西的思考11 小时前
【轻量化复刻大模型 / KIMI K3】KDA(Kimi Delta Attention):并行
人工智能·算法·机器学习
蹊黎11 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
砚底藏山河11 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊12 小时前
MySQL 的四种隔离级别
java·数据库·mysql