欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

在 SpringMVC 中使用 @Value 为非字符串类型注入值

最编程 2024-04-30 22:17:32
...

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;

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

推荐阅读