@Value注解@Value("#{}")和@Value("${}")的区别

@Value("#{}")

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

    @Value("#{1}")
        //number相当于赋值 1
    private int number; 

@Value("${}")

@Value("${}") 可以获取对应属性文件中定义的属性值。
假如我有一个application.properties文件 里面配置了:

         web.view.prefix =/WEB-INF/views/

可以通过@Value("{}”)表达式,在controller或者其他组件中通过下面代码即可获取“”/WEB-INF/views/“”这个字符串

      @Value("${web.view.prefix}")
      private String prefix;

你可能感兴趣的:(@Value注解@Value("#{}")和@Value("${}")的区别)