专栏首页eclipse编程SpringBoot使用@Value读取属性值

SpringBoot使用@Value读取属性值

今天给大家讲一下如何在SpringBoot项目中使用@Value注解读取配置文件的属性值

1

给普通变量赋值

1. 给普通变量赋值时,直接在变量声明之上添加@Value()注解即可

@Component
public class PayUtil {

    @Value("${nuonuo.app_key}")
    public String appKey;

    @Value("${nuonuo.app_secret}")
    public String appSecret;
}

测试:

@SpringBootTest(classes = HelloApplication.class)
@RunWith(SpringRunner.class)
public class Test1 {

    @Autowired
    PayUtil payUtil;

    @Test
    public void test() {
        System.out.println("---"+payUtil.appKey);
    }
}

2

给静态变量赋值

1. 注意:给静态变量注入值的时候,在静态变量声明之上直接添加@Value注解是无效的。若要给静态变量赋值,可以在set()方法上加@value注解。

@Component
public class PayUtil {
    
    public static String appKey;
    public static String appSecret;
    
    @Value("${nuonuo.app_key}")
    public void setAppKey(String app_key) {
        appKey = app_key;
    }

    @Value("${nuonuo.app_secret}")
    public void setAppSecret(String app_secret) {
        appSecret = app_secret;
    }
}

测试:

@SpringBootTest(classes = HelloApplication.class)
@RunWith(SpringRunner.class)
public class Test1 {
    @Test
    public void test() {
        System.out.println("---"+PayUtil.appKey);
    }
}

3

总结

1. 直接在静态变量上加@Value无效;
2. 给变量赋值要交给Spring容器管理,也就是需要在类上加@Component注解;

/ END/

作者简介:一颗雷布斯,程序员一枚。穿着格子衫,梳着地中海发型,写过最多的代码就是if-else,梦想35岁买个好的电动车送外卖。

本文分享自微信公众号 - eclipse编程(eclipsecamp),作者:一颗雷布斯

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-09-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SpringBoot之Spring@Value属性注入使用详解

    @Value属性注入功能根据注入的内容来源可分为两类:通过配置文件的属性注入和通过非配置文件的属性注入。

    程序新视界
  • 使用@Value 和@PropertySource 实现为属性赋值

    基于 SpEL 表达式也很简单,只需要写 SpEL 表达式,可以参考 Spring Expression Language(SpEL)速查指南

    水货程序员
  • 39 - 读取XML节点和属性值

    若尘_
  • @Configuration配置类里面使用@Value获取不到.yml配置文件属性的值

    解决这个错误找了好长时间,终于ok了 通常这个错是在shiroConfig中 原因:LifecycleBeanPostProcessorBean 的时候总是...

    逐梦的青春
  • c#之dynamic类型通过属性获取值(get value by key)

    即 d.GetType().GetProperty("value2").GetValue(d, null);注意这个写的时候没有代码提示,但是是可以的。

    Vincent-yuan
  • 【SpringBoot】配置文件的加载与属性值的绑定

    我们的所有属性源都存放在AbstractEnvironment中的属性propertySources中; 每加载一个属性源就会往里面塞一个propertySou...

    石臻臻的杂货铺[同名公众号]
  • 走进Java接口测试之读取配置文件

    但在大部分用例开发环境下,添加额外配置是无所避免的,比如自定义应用端口号、服务地址、数据库的配置等,都或多或少的需要一些外部的配置项等。

    阿峰博客
  • 走进Java接口测试之读取配置文件

    但在大部分用例开发环境下,添加额外配置是无所避免的,比如自定义应用端口号、服务地址、数据库的配置等,都或多或少的需要一些外部的配置项等。

    高楼Zee
  • SpringBoot实战 | 配置文件详解

    首先构建 SpringBoot 项目,不会的看这篇旧文 使用 IDEA 构建 Spring Boot 工程。

    一个优秀的废人
  • box-sizing取值、属性、用途、默认值

    content-box :以盒子内容区域+padding(内边距)+border(边框)+margin(外边距); border-box : 将盒子设定为怪异...

    我不是费圆
  • 补习系列(10)-springboot 之配置读取

    在早前的博客中曾经写过 Spring 程序通过 Bean 映射实现配置信息的读取。 在SpringBoot 框架中读取配置的方式变得非常多样,这导致读者在搜寻资...

    美码师
  • 快速学习SpringBoot-Java配置

    在入门案例中,我们没有任何的配置,就可以实现一个SpringMVC的项目了,快速、高效!

    cwl_java
  • javaweb-springboot-2-73

    https://spring.io/projects/spring-boot 有助于开发工程,减少配置,使得开发者更关注于业务实现而非技术配置,创建java应...

    全栈程序员站长
  • 深入浅出Spring Boot框架--6个知识点小结!

    产生背景:Spring开发比较繁琐,配置文件很多,部署流程复杂,整合第三方框架难度大。这会降低开发效率

    Java程序猿
  • Spring Boot 基础配置

      SpringBoot 是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就需要添加配置文件。在 Spring Boot 中,配置...

    Demo_Null
  • 近两年火热的微服务springboot不同配置文件详细讲解

    配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;

    好好学java
  • 2020[最全]-SpringBoot讲解(最优雅-最精美-最详细)

    11 编写controller运行就好了 访问 localhost:8080//hello

    CaesarChang张旭
  • SpringBoot基础系列@Value 之字面量及 SpEL使用知识点介绍篇

    承接上一篇博文【SpringBoot 基础系列】@Value 中哪些你不知道的知识点 中提及到但没有细说的知识点,这一篇博文将来看一下@Value除了绑定配置文...

    一灰灰blog
  • Springboot读取自定义属性之集合(list,数组)

    springboot配置文件的读取操作很常见,之前也写过简单的读取配置文件的笔记SpringBoot学习之DAY_02 springboot配置文件信息读取 ...

    海加尔金鹰

扫码关注云+社区

领取腾讯云代金券