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
© 著作权归作者所有,转载或内容合作请联系作者

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

相关推荐
持梦远方几秒前
C 语言基础入门:基本数据类型与运算符详解
c语言·开发语言·c++
一头生产的驴8 分钟前
java整合itext pdf实现自定义PDF文件格式导出
java·spring boot·pdf·itextpdf
YuTaoShao14 分钟前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
Heartoxx16 分钟前
c语言-指针(数组)练习2
c语言·数据结构·算法
zzywxc78718 分钟前
AI 正在深度重构软件开发的底层逻辑和全生命周期,从技术演进、流程重构和未来趋势三个维度进行系统性分析
java·大数据·开发语言·人工智能·spring
大熊背30 分钟前
图像处理专业书籍以及网络资源总结
人工智能·算法·microsoft
满分观察网友z34 分钟前
别怕树!一层一层剥开它的心:用BFS/DFS优雅计算层平均值(637. 二叉树的层平均值)
算法
杰克尼2 小时前
1. 两数之和 (leetcode)
数据结构·算法·leetcode
YuTaoShao3 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
程序员张33 小时前
SpringBoot计时一次请求耗时
java·spring boot·后端