博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用spring中4.2.6版本使用@Value取值失败,结果为${xxx}的情况
阅读量:4547 次
发布时间:2019-06-08

本文共 1034 字,大约阅读时间需要 3 分钟。

环境:spring 4.2.6

使用全注解来获取值的时候发生@Value为写好的表达式

简单的代码:

实体类:

public class RichMan {

    @Value(value="${richMan.name}")
    private String name ;
    @Value("99123")
    private String money;
    @Value("#{55}")
    private int age;

properties文件:

richMan.name = \u738B\u9707\u6797

richMan.money = 99999999
richMan.age = 66

配置类:

@PropertySource(value= {"classpath:floor.properties"})

@Configuration
public class MainValueConfigu {
    @Lazy(value=true)
    @Bean(name = "richMan")
    public RichMan getRichMan() {
        return new RichMan();
    }

测试类:

    @Test

    public void testValueProperties() {
        RichMan bean = (RichMan)aca.getBean("richMan");
        System.out.println(bean);
        ConfigurableEnvironment env = aca.getEnvironment();
        System.out.println(env.getProperty("richMan.name"));
    }

结果为:

init----${richMan.name}

RichMan [name=${richMan.name}, money=99123, age=55]
王震林

###############################################

能够从环境里面通过.getEnvironment();取出值来。但是设置的值没有通过表达式取出来。

解决办法:

把spring版本升级为4.3.12-------------解决问题能够正确使用

具体原因不明。猜想是不是对表达式的支持上的问题

 

转载于:https://www.cnblogs.com/sunshine99/p/10555898.html

你可能感兴趣的文章
学习5_STM32--外设通信方式
查看>>
CSS 基础语法
查看>>
修改后台传的值
查看>>
暑假假期周进度报告(第二周)
查看>>
运行安装服务步骤
查看>>
RDS for MySQL 如何使用 Percona Toolkit
查看>>
System.map
查看>>
在Pandas中更改列的数据类型【方法总结】
查看>>
(原)lua使用ffi调用c程序的函数
查看>>
为python添加magic进行文件类型识别
查看>>
软件生命周期
查看>>
图像按钮
查看>>
PL/SQL 训练09--面向对象
查看>>
一维条码打印的C#实现(Code128)
查看>>
nyoj 10——skiing————————【记忆化搜索】
查看>>
详解vue生命周期
查看>>
表存在之设置默认值
查看>>
5th,Python购物车模拟
查看>>
canvans 翻转翻转
查看>>
UDP TCP
查看>>