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部分)

SpringMVC中使用@Value给非String类型注入值

正确的打开方式
  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;

注意:表达式的使用方式为#{表达式}

上一篇:企业复工背后究竟经历了什么?20000名复工“摆渡人”来告诉你


下一篇:斐波那契数列PHP非递归数组实现