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


String類型的@Value注入方式

  1. String類型的直接可以使用
 @Value("陳婉清")
 private String name;

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

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

上面的代碼會報錯的,因為@Value要求的參數的String類型的
2. 非String類型的使用@Value時的錯誤2

 @Value("2015202110032")
 private int id;

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

正確的打開方式

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

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM