返回顶部
首页 > 资讯 > 后端开发 > 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://lsjlt.com/news/147529.html(转载时请注明来源链接)

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

猜你喜欢
  • springboot如何获取application.yml里值的方法
    目录方法一:方法二:在项目中,很多时候需要用到一些配置信息,这些信息在测试环境和生产环境下可能会有不同的配置,后面根据实际业务情况有可能还需要再做修改。我们不能将这些配置在代码中写死...
    99+
    2024-04-02
  • springboot怎么获取application.yml里值
    本篇内容主要讲解“springboot怎么获取application.yml里值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“springboot怎么获取application.yml里值”吧!...
    99+
    2023-06-30
  • springboot如何获取yml的值
    在Spring Boot中,可以通过在配置文件(如application.yml)中定义属性值,然后在Java代码中使用@Value...
    99+
    2024-04-02
  • springboot如何获取yml里面的属性值
    目录如何获取yml里面的属性值开发环境项目结构pom依赖springboot启动类person.ymlperson.javaDog.javaSpringbootDemoApplica...
    99+
    2024-04-02
  • springboot如何获取properties属性值
    这篇文章主要介绍springboot如何获取properties属性值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!获取properties属性值方式总结spring boot 在多环境情况下我们需要根据不同的获取不...
    99+
    2023-06-29
  • Springboot如何获取配置文件application.yml中自定义的变量并使用
    前言:在写项目中我们经常要将同样的变量在不同的文件中写无数次,这样修改起来要一通好找,非常不方便,平常都会写一个工具类存入自己的变量进行调用取值,但是呢,懒得写咋办,写了还要注入,注...
    99+
    2024-04-02
  • SpringBoot如何获取application.properties中自定义的值
    目录结构: pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt...
    99+
    2024-04-02
  • Springboot 如何指定获取出 yml文件里面的配置值
    之前写过一篇获取properties文件里面的值: Springboot 指定获取自己写的配置properties文件的值 www.jb51.net/article/217899.h...
    99+
    2024-04-02
  • 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+
    2024-04-02
  • springboot如何使用@Value获取配置文件的值
    使用@Value获取配置文件的值 1、创建配置文件(application.properties) spring.activemq.broker-url=tcp://localh...
    99+
    2024-04-02
  • java如何获取xml标签里面的值
    要获取XML标签里面的值,可以使用Java中的DOM或SAX解析器。使用DOM解析器:1. 导入相关的类:```javaimport...
    99+
    2023-09-27
    java
  • SpringBoot中获取profile的方法详解
    目录spring boot与profile静态获取方式autowire ProfileConfigspring boot与profile spring boot 的项目中不再使用xm...
    99+
    2024-04-02
  • jquery如何获取textarea的值
    使用jquery获取textarea值的方法:1.新建html项目,引入jquery;2.使用textarea标签创建文本域,设置id属性;3.添加button按钮,绑定onclick点击事件;4.通过id获取textarea对象,使用te...
    99+
    2024-04-02
  • jquery如何获取input的值
    使用jquery获取input值的方法:1.新建html项目,引入jquery;2.添加input输入框,设置id属性;3.通过id属性获取input对象;4.使用val()方法获取input的值;具体步骤如下:首先,新建一个html项目,...
    99+
    2024-04-02
  • java如何获取map的值
    在Java中,可以使用`get()`方法从`Map`对象中获取键对应的值。具体语法如下:```javaMap map = new H...
    99+
    2023-09-11
    java
  • Vue.js如何获取data-*的值
    目录data-*获取普通数据静态获取动态获取获取对象数据动态获取data-* 这个属性熟悉JS的小伙伴都知道,data-*是一个自定义属性,它的功能是视图层往js传递我们想要传的数据...
    99+
    2024-04-02
  • jquery如何获取radio的值
    您可以使用以下代码来获取选中的radio按钮的值:```javascript// 通过name获取选中的radio按钮的值var v...
    99+
    2023-08-11
    jquery radio
  • jquery如何获取label的值
    在jQuery中,可以通过以下方法获取label的值:1. 使用label元素的for属性和jQuery的选择器来获取label的值...
    99+
    2023-08-21
    jquery
  • jquery如何获取class的值
    本文小编为大家详细介绍“jquery如何获取class的值”,内容详细,步骤清晰,细节处理妥当,希望这篇“jquery如何获取class的值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。获取class的值获取cl...
    99+
    2023-07-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作