@Value取值为NULL的解决方案

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

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

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

  • 使用static或final修饰了tagValue,如下:
    private static String tagValue;  //错误
    private final String tagValue;    //错误

  • 类没有加上@Component(或者@service等)
    @Component   //遗漏
    class TestValue{
         @Value("${tag}")
         private String tagValue;
    }

  • 类被new新建了实例,而没有使用@Autowired
    @Component
    class TestValue{
         @Value("${tag}")
         private String tagValue;
    }

    class Test{
        ...
        TestValue testValue = new TestValue()
    }

这个testValue中肯定是取不到值的,必须使用@Autowired:

class Test{
        @AutoWired
        TestValue testValue
    }

原文地址:https://blog.csdn.net/zzmlake/article/details/54946346

原文地址:https://www.cnblogs.com/jpfss/p/11322774.html

时间: 2024-11-13 09:09:17

@Value取值为NULL的解决方案的相关文章

ajax post请求request.getParameter("")取值为null

今天在写提交一个json数据到后台,然后后台返回一个json数据类型.但是发现后台通过request.getParamter("")取到的值为null. 于是写一个简单的ajax 请求,来排查问题 前台代码: $(document).ready(function(){ $("#ajax").click(function(){ var depart="depart"; $.ajax({ url :path+ "/AjaxReponse&q

[WP8开发] WinJS中winControl或者itemDataSource值为null的解决方案

在用WinJS开发的过程中,比如添加一个Pivot控件,添加PivotItem1,PivotItem2... 在js文件中执行对应的PivotItem语句,会发现这样一种情况: PivotItem1是程序启动后首先呈现在界面中的元素,而Item2.Item3还没有被初始化,这时候如果js中单纯的去数据绑定Item2.Item3的值, 会出现"0x800a138f - JavaScript runtime error: Unable to set property 'itemDataSource'

pig对null的处理(实际,对空文本处理为两种取值null或‘’)

pig对文本null的处理很特殊.会处理成两种null,还会处理成''这种空值. 比如,读name,age,sex日志信息.name取值处理,如果记录为",,,"这样,会将name取值为null,如果记录为",19,男"则name会处理为''.同样是空值,pig读取后的取值却不一样.所以一定要小心. pig读取日志信息,遇到取值为空的字段会处理为两种,一种取值为'',另一种为null. 具体例子:读取日志中倒数第4个字段(全部为空,两个逗号之间无值",,&

使用mybatis如果类属性名和数据库中的属性名不一样取值就会为null

使用mybatis时如果类属性名和数据库中的属性名不一样取值就会为null 这是不能再去改变javabean中的属性,只能改变sql语句.语句如下所示: <select id="selectEmp" resultType="com.atguigu.mybatis.bean.Employee"> select id,last_name lastName,gender,email from tbl_employee where id= #{id} </

注册表键值明明存在OpenSubKey始终返回null,解决方案

先上代码及实例 RegistryKey rsg = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Macromedia\FlashPaper Printer\2\Installation\", false);为什么返回值是NULL L 原因其实是在64位电脑上跑32位程序,以上代码读取为空值,32位电脑读注册表使用OpenSubKey是正确的 解决方法: I will show you how to get connecting string

关于模板中的动态取值 ---反射与javascript脚本编译

在项目中经常遇到一个问题,打印word或者打印excel的时候,我们经常使用一对一的赋值或者批量替换的方式来对模板进行修改. 但是现在遇到两种场景: 1.取值是通过自定以方法进行取值的. 如:一个销售单据,会涉及到很多种费用,并且这些费用是由后台配置的,非常灵活.但是我们在制作打印模板时取值各项费用我们该如何去定义他呢,如何给他赋值呢?我们如果针对这一个场景下的模板进行一个特殊定义后,在打印另一份单据或者遇到同样的取值非常灵活的数据,是不是也需要进行特殊处理呢. 2.取值是通过自行定义进行取值的

SpringBoot使用@Value从yml文件取值为空--注入静态变量

SpringBoot使用@Value从yml文件取值为空--注入静态变量 1.application.yml中配置内容如下: pcacmgr:   publicCertFilePath: E:\\pcacmgr\\CerFiles\\xh_public.cer   encPublicCertFilePath: E:\\pcacmgr\\CerFiles\\hjzf_encPublic.cer   encPfxFilePath: E:\\pcacmgr\\CerFiles\\hjzf_encPfx

百度ueditor 实例化 Cannot set property &#39;innerHTML&#39; of null 完美解决方案

此时此刻,我正在用博客园推荐的TinyMCE编辑器写这个博客,突然想起最近在项目中使用百度ueditor编辑器中的一些经历.所以记录在此,与大家分享. 不得不说,百度ueditor是一款很好的在线编辑器,为开发者提供了诸多便利,你甚至可以用它来把word文档的内容按照一定的格式转换成html代码,然后再放进自己的项目中. 1.我们的项目中,用户在注册时有可能需要查看用户协议和隐私协议,而我们的文案是将这两个协议的内容放在word文档中,作为苦逼的开发人员,你需要把这些文字展示在html页面上,并

C#编写第三方控件,实现窗体控件的一键取值

上篇博客中讲到了利用编写第三方控件的方法,实现给窗体控件的Text属性赋值,比如说:TextBox,Combox等.有赋值,当然也有取值操作.从窗体的控件中取值,然后存入变量或者实体属性当中,传入到数据访问层进行添加,更新等操作也是我们经常使用的.如何实现一键取值呢? 使用的方法在上篇博客中已经做了详细说明,这里就不再累述了. 代码写在这里: 该方法的作用是,遍历传入窗体中的控件,并且获取其值赋给实体类的相应属性. /// <summary> /// 从窗体控件取值,填充到学生实体类中 ///