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

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

相关推荐
Grey Zeng5 小时前
Java SE 25新增特性
java·jdk·jdk新特性·jdk25
雨白6 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
架构师沉默10 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群12 小时前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL13 小时前
JVM 类加载:双亲委派机制
java·后端
NAGNIP13 小时前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
用户2986985301413 小时前
Java HTML 转 Word 完整指南
java·后端
渣哥13 小时前
原来公平锁和非公平锁差别这么大
java
渣哥14 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K14 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端