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

来源:互联网 发布:lua 下载网络图片 编辑:程序博客网 时间:2024/06/07 09:53

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;

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

0 0
原创粉丝点击