Spring @Value的$和#用法区别

Posted Jim

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring @Value的$和#用法区别相关的知识,希望对你有一定的参考价值。

@Value的值有两类:

  • ① ${ property : default_value }
  • ② #{ obj.property? : default_value }

就是说,第一个注入的是外部参数对应的property,第二个则是SpEL表达式对应的内容。

那个 default_value,就是前面的值为空时的默认值。注意二者的不同。

第一种主要是配置文件上的值获。

第二种是对象属性的获取,需要注意的是,如果是获取一个方法的值时,需要在前面增加@,比如#{@obj.getProperty()}

 

参考:

https://www.cnblogs.com/larryzeal/p/5910149.html

以上是关于Spring @Value的$和#用法区别的主要内容,如果未能解决你的问题,请参考以下文章

Spring注解@Resource和@Autowired区别对比

@PathVariable和@RequestParam的区别,@SessionAttributes, @ModelAttribute的用法

val()用法和value的区别

Spring @Value 用法小结

spring 通过@Value 获取properties文件中设置了属性 ,与@Value # 和$的区别

spring bean中的properties元素内的ref和value的区别;* 和 ** 的区别