天天看點

Spring @Value的$和#用法差別

@Value的值有兩類:

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

就是說,第一個注入的是外部參數對應的property,第二個則是SpEL表達式對應的内容。

那個 default_value,就是前面的值為空時的預設值。注意二者的不同。

第一種主要是配置檔案上的值獲。

第二種是對象屬性的擷取,需要注意的是,如果是擷取一個方法的值時,需要在前面增加@,比如#{@obj.getProperty()}

參考:

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