SpringMVC中使用@Value给非String类型注入值
| String类型的@Value注入方式 |
String类型的直接可以使用
@Value("陈婉清")
private String name;
| 非String类型的@Value注入方式报错类型 |
- 非
String类型的使用@Value时的错误1
@Value(21)
private int id;
上面的代码会报错的,因为
@Value要求的参数的String类型的
2. 非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;
注意:表达式的使用方式为
#{表达式}

浙公网安备 33010602011771号