广告
返回顶部
首页 > 资讯 > 后端开发 > Python >springboot如何获取application.yml里值的方法
  • 590
分享到

springboot如何获取application.yml里值的方法

2024-04-02 19:04:59 590人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录方法一:方法二:在项目中,很多时候需要用到一些配置信息,这些信息在测试环境和生产环境下可能会有不同的配置,后面根据实际业务情况有可能还需要再做修改。我们不能将这些配置在代码中写死

项目中,很多时候需要用到一些配置信息,这些信息在测试环境和生产环境下可能会有不同的配置,后面根据实际业务情况有可能还需要再做修改。我们不能将这些配置在代码中写死,最好是写到配置文件中,比如可以把这些信息写到 application.yml 文件中。

那么,怎么在代码里获取或者使用这个地址呢?有2个方法。

方法一:

我们可以通过@Value 注解的 ${key} 即可获取配置文件(application.yml)中和 key 对应的 value 值,这个方法适用于微服务比较少的情形

方法二:

在实际项目中,遇到业务繁琐,逻辑复杂的情况,需要考虑封装一个或多个配置类。例如,假如在当前服务中,某个业务需要同时调用微服务1、微服务2和微服务3。

如果这样一个个去使用 @Value 注解引入相应的微服务地址的话,太过于繁琐。

也许实际业务中,远远不止这三个微服务,甚至十几个都有可能。对于这种情况,我们可以先定义一个 MicroServiceUrl 类来专门保存微服务的 URL

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "url")
public class MicroServiceUrl {
private String orderUrl;
private String userUrl;
private String shoppingUrl;
public String getOrderUrl() {
return orderUrl;
}
public void setOrderUrl(String orderUrl) {
this.orderUrl = orderUrl;
}
public String getUserUrl() {
return userUrl;
}
public void setUserUrl(String userUrl) {
this.userUrl = userUrl;
}
public String getShoppingUrl() {
return shoppingUrl;
}
public void setShoppingUrl(String shoppingUrl) {
this.shoppingUrl = shoppingUrl;
}
}

添加依赖:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>

目前配置写好了,此时,不需要在代码中一个个引入这些微服务的 URL,直接通过 @Resource 注解将刚刚写好的配置类注入进来即可使用了,以下是测试Controller:

import com.example.test1.config.MicroServiceUrl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.WEB.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;

@RestController
@RequestMapping("/test")
public class ConfiGController {
private static final Logger LOGGER = LoggerFactory.getLogger(ConfigController.class);
@Value("${url.orderUrl}")
private String orderUrl;
@Resource
private MicroServiceUrl microServiceUrl;
@RequestMapping("/config")
public String testConfig() {
LOGGER.info("获取的地址为:{}", orderUrl);
LOGGER.info("微服务1地址为:{}", microServiceUrl.getOrderUrl());
LOGGER.info("微服务2地址为:{}", microServiceUrl.getUserUrl());
LOGGER.info("微服务3地址为:{}", microServiceUrl.getShoppingUrl());
return "success";
}
}

到此这篇关于SpringBoot如何获取application.yml里的值的文章就介绍到这了,更多相关springboot获取值内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: springboot如何获取application.yml里值的方法

本文链接: https://www.lsjlt.com/news/147529.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • springboot如何获取application.yml里值的方法
    目录方法一:方法二:在项目中,很多时候需要用到一些配置信息,这些信息在测试环境和生产环境下可能会有不同的配置,后面根据实际业务情况有可能还需要再做修改。我们不能将这些配置在代码中写死...
    99+
    2022-11-13
  • springboot怎么获取application.yml里值
    本篇内容主要讲解“springboot怎么获取application.yml里值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“springboot怎么获取application.yml里值”吧!...
    99+
    2023-06-30
  • springboot如何获取yml里面的属性值
    目录如何获取yml里面的属性值开发环境项目结构pom依赖springboot启动类person.ymlperson.javaDog.javaSpringbootDemoApplica...
    99+
    2022-11-13
  • springboot如何获取properties属性值
    这篇文章主要介绍springboot如何获取properties属性值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!获取properties属性值方式总结spring boot 在多环境情况下我们需要根据不同的获取不...
    99+
    2023-06-29
  • Springboot如何获取配置文件application.yml中自定义的变量并使用
    前言:在写项目中我们经常要将同样的变量在不同的文件中写无数次,这样修改起来要一通好找,非常不方便,平常都会写一个工具类存入自己的变量进行调用取值,但是呢,懒得写咋办,写了还要注入,注...
    99+
    2022-11-12
  • asp.net获取select值的方法
    复制代码 代码如下: <select runat="server" class="xgxxbd" id="wyzs"> <option value="6">托...
    99+
    2022-11-15
    asp.net select值
  • SpringBoot 属性配置中获取值的方式
    目录SpringBoot 属性配置中获取值首先,定义一个实体类去写属性测试和生产区分SpringBoot 获取值和配置文件1、@ConfigurationProperties(pre...
    99+
    2022-11-13
  • SpringBoot如何获取application.properties中自定义的值
    目录结构: pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt...
    99+
    2022-11-12
  • Springboot 如何指定获取出 yml文件里面的配置值
    之前写过一篇获取properties文件里面的值: Springboot 指定获取自己写的配置properties文件的值 www.jb51.net/article/217899.h...
    99+
    2022-11-12
  • SpringBoot中获取profile的方法详解
    目录spring boot与profile静态获取方式autowire ProfileConfigspring boot与profile spring boot 的项目中不再使用xm...
    99+
    2022-11-13
  • springboot获取properties属性值的多种方式总结
    目录获取properties属性值方式总结1. 除了默认配置在 application.properties的多环境中添加属性2. 使用之前在spring中加载的value值形式3....
    99+
    2022-11-13
  • springboot如何使用@Value获取配置文件的值
    使用@Value获取配置文件的值 1、创建配置文件(application.properties) spring.activemq.broker-url=tcp://localh...
    99+
    2022-11-12
  • SpringBoot属性配置中获取值的方式是什么
    这篇文章主要介绍“SpringBoot属性配置中获取值的方式是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot属性配置中获取值的方式是什么”文章能帮助大家解决问题。Spring...
    99+
    2023-06-29
  • python获取cookie值的方法有哪些
    在Python中获取cookie值的方法有以下几种:1. 使用requests库:可以通过`response.cookies`获取服...
    99+
    2023-10-11
    python
  • java如何获取xml标签里面的值
    要获取XML标签里面的值,可以使用Java中的DOM或SAX解析器。使用DOM解析器:1. 导入相关的类:```javaimport...
    99+
    2023-09-27
    java
  • JS获取表单中的元素和取值方法
    获取表单的四种方式 1、document.表单名称2、document.getElementById(表单 id);3、document.forms[表单名称]4、document....
    99+
    2022-11-13
  • springboot获取项目目录路径的方法
    今天小编给大家分享的是springboot获取项目目录路径的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。目录springboot获取项目目录路径springboot获取reso...
    99+
    2023-07-06
  • JavaScript三种获取URL参数值的方法
    目录前言URLSearchParamsURL纯JS前言 在 URL 中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的 ID。如果在前端处理任何业务或请求逻辑...
    99+
    2022-11-13
  • springmvc获取前端值的方法是什么
    在Spring MVC中,获取前端值的方法有以下几种:1. 使用@RequestParam注解获取请求参数的值:java@Reque...
    99+
    2023-10-18
    springmvc
  • Vue.js如何获取data-*的值
    目录data-*获取普通数据静态获取动态获取获取对象数据动态获取data-* 这个属性熟悉JS的小伙伴都知道,data-*是一个自定义属性,它的功能是视图层往js传递我们想要传的数据...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作