zoukankan      html  css  js  c++  java
  • @Value取不到值的原因(引用application.properties中自定义的值)

    在spring mvc架构中,如果希望在程序中直接使用properties中定义的配置值,通常使用一下方式来获取:

    @Value("${tag}")
    private String tagValue;

    但是取值时,有时这个tagvalue为NULL,可能原因有:

    1.使用static或final修饰了tagValue,如下:

    private static String tagValue; //错误
    private final String tagValue; //错误

    2.类没有加上@Component(或者@service等)

    @Component //遗漏
    class TestValue{
        @Value("${tag}")
        private String tagValue;
    }

    3.类被new新建了实例,而没有使用@Autowired

    @Component 
    class TestValue{
        @Value("${tag}")
        private String tagValue;
    }
    
    class Test{
        ...
        TestValue testValue = new TestValue()
    }

    正确方式: 上面这个testValue中肯定是取不到值的,必须使用@Autowired

    class Test{
        @AutoWired
        TestValue testValue
    }

    版权声明: 本文有 ```...裥簞點 发表于 bloghome博客

    转载声明: 可自由转载、引用,但需要属名作者且注明文章出处。

    文章链接: https://www.bloghome.com.cn/user/yysblog

  • 相关阅读:
    for循环
    条件语句练习
    语句
    语言基础
    python -- 异步IO 协程
    转--python -- 收发邮件
    hive vs hbase
    postgresql 常用速查
    转--利用hexo搭建个人静态博客
    转- --python 3 编码
  • 原文地址:https://www.cnblogs.com/yysbolg/p/10642330.html
Copyright © 2011-2022 走看看