spring的 Value註解使用

2021-09-25 14:04:20 字數 958 閱讀 7146

昨天看到了springmvc的controller中的屬性使用了@value註解,並且本人之前用的${}形式,看到別人用的#{}形式,特此記錄下。

1.@value註解作用

該註解的作用是將我們配置檔案的屬性讀出來,有@value(「${}」)和@value(「#{}」)兩種方式,區別之後介紹,先不多說上圖感受。

2.@value註解作用的兩種方式

第一種方式@value(「${}」):

我們讀取他的 server.port 屬性,springmvc的controller結構如下:

執行程式 看到: 

屬性讀取成功

第二種方式 @value(「#{}」): 

修改controller,如圖: 

啟動程式發現報錯: 

org.springframework.expression.spel.spelevaluationexception: el1008e: property or field 『server』 cannot be found on object of type 『org.springframework.beans.factory.config.beanexpressioncontext』 - maybe not public? 

解決之前 說一下${}和#{}區別.

@value的值有兩類: 

① $ 

② # 

第乙個注入的是外部配置檔案對應的property,第二個則是spel表示式對應的內容。 那個 

default_value,就是前面的值為空時的預設值。注意二者的不同,#{}裡面那個obj代表物件。

好了,知道了#{}的用法 我們改進一下,如圖 準備乙個實體類,並且註冊到sping中:

修改controller,userbean為userbean實體類在spring容器註冊的預設id,詳情自行閱讀spring ioc。修改後如下圖: 

執行結果: 

執行成功。

spring註解之 value註解

首先在xml中定義乙個bean如下 把對應的引數以property中value的形式注入 測試 如下 根據bean id獲取bean物件 system.out.println bean 執行結果如下 可以發現已經獲取到xml中配置的屬性了 user username zhangsan,age 26 ...

spring註解 value使用

public class bike public void setname string name value private string name public string getname configuration propertysource classpath test.properti...

Spring通過 Value註解注入屬性的幾種方式

場景 假如有以下屬性檔案dev.properties,需要注入下面的tag tag 123 通過propertyplaceholderconfigurer value private string tag 通過preferencesplaceholderconfigurer value privat...