SpringMVC中使用@Value給非String類型注入值

String類型的@Value注入方式

String類型的直接可以使用

 @Value("陳婉清")
 private String name;

非String類型的@Value注入方式報錯類型

  • String類型的使用@Value時的錯誤1
@Value(21)
private int id;

上面的代碼會報錯的,因爲@Value要求的參數的String類型的

  • String類型的使用@Value時的錯誤2
 @Value("2015202110032")
 private int id;

原因

原因爲把2015202110032變成 int會失敗,長度超出,這裏可能是因爲Spring沒有采取截取的方式,而是採用嚴禁的報錯的形式,結果Spring報錯如下(只截取了CauseBy部分)

錯誤描述

正確的打開方式

  • 正常使用方式
@Value("2015202110032")
private int id;
@Value("陳婉清")
private String name;
@Value("98.5")
private float score;
  • 使用表達式來傳值。即使一個int常量都可以認爲是一個表達式
@Value("#{22}")
private int id;
@Value("陳婉清")
private String name;
@Value("#{98.5}")
private float score;

注意:表達式的使用方式爲#{表達式}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章