加载中...
加载中...
@Value("${}")和@Value("#{}")的区别

@Value("${}")和@Value("#{}")的区别 原创

1、@Value("${}")
通过@Value(“${}”) 可以获取对应属性文件中定义的属性值。

2、@Value("#{}")
表示SpEl表达式通常用来获取bean的属性,或者调用bean的某个方法。当然还有可以表示常量

当bean通过@Value(#{“”}) 获取其他bean的属性,或者调用其他bean的方法时,只要该bean (Beab_A)能够访问到被调用的bean(Beab_B),即要么Beab_A 和Beab_B在同一个容器中,或者Beab_B所在容器是Beab_A所在容器的父容器。


使用@Value注入表达式:

1.注入普通字符

  @Value("注入普通字符")

2.注入操作系统属性

    @Value(#{SystemProperties['os.name']})

3.表达式

     @Value(#T(java.lang.Math).random()*100.0)

4.其他Bean的属性

      @Value("#{其他Bean的name.其他Bean的属性}")

5. 文件资源

      @Value("classpath:其他文件的路径")

6.网址资源

       @Value("www.baidu.com")

7.其他配置文件的属性,注意这个使用$,而不是#

        @Value("${stu.name}")

没有更多推荐了 [去首页]
image
文章
357
原创
284
转载
73
翻译
0
访问量
199056
喜欢
47
粉丝
6
码龄
5年
资源
0

文章目录

加载中...
0
0