当前位置: 首页 > 知识库问答 >
问题:

Spring@Value类型不匹配异常:无法将类型“java.lang.字符串”的值转换为所需的类型“java.lang.Double”

池麒
2023-03-14

我想使用@Value注释注入一个Double属性,例如:

@Service
public class MyService {

    @Value("${item.priceFactor}")
    private Double priceFactor = 0.1;

// ...

并使用Spring特性占位符(特性文件):

item.priceFactor=0.1

我得到异常:

org.springframework.beans。TypeMismatchException:无法将“java.lang.String”类型的值转换为所需的“java.land.Double”类型;嵌套异常是java.lang.NumberFormatException:对于输入字符串:“${item.priceFactor}”

有没有办法使用来自属性文件的Double值?

共有3个答案

唐兴思
2023-03-14

我有一个类似的问题,但不是required type“java.lang.Double”而是requireds type“java.lang.Long”。我用的是env。YAML文件中的变量。结果表明,YAML不支持Long数据类型。

哈翔
2023-03-14

这应该能解决问题-

@Value("#{T(Double).parseDouble('${item.priceFactor}')}")
private Double priceFactor;
谈渊
2023-03-14

尝试更改以下行

@Value("${item.priceFactor}")

@Value("#{new Double('${item.priceFactor}')}")
 类似资料:
  • 您好,我正在使用Spring 4.1.1.RELEASE开发一个web应用程序。所有的Spring配置都是通过注释完成的,除了一点之外,它运行得很好: > 我在项目中有一个包含这些行的config.properties文件 我有一个配置类 和另一个类 属性“filter”的值已成功从属性资源中注入。但是我在属性“计数”上得到了一个例外: 当我将属性“count”的类型更改为String时,它开始工

  • 问题内容: 我想使用@Value注释注入Double属性,例如: 并使用Spring属性占位符(属性文件): 我得到异常: org.springframework.beans.TypeMismatchException:无法将类型“ java.lang.String”的值转换为所需的类型“ java.lang.Double”;嵌套的异常是java.lang.NumberFormatExceptio

  • 我正在尝试在jdbc中创建数据库的池连接,下面是我的代码,但我得到了 错误: 组织。springframework。豆。工厂UnsatifiedDependencyException:创建名为“org”的bean时出错。springframework。jdbc。数据源。在类路径资源[资源/数据库/数据库.xml]中定义的DriverManager数据源#0]:通过索引为0的类型为[java.lan

  • 我是Spring和Java的新手,正在使用JSP、JSTL、Hibernate/JPA和一个model类使表单在Spring MVC中工作。我可以让页面显示得很好,但是创建用户的帖子给了我一个错误。 这个错误是有意义的,因为表单正在传回角色的ID,而User对象期望传递一个Role对象。但是,我不确定如何解决这一问题,同时仍然允许我的JSP由我的实际实体对象支持,因为我希望使用Spring/Hib

  • 这是控制器代码部分: 我收到这条消息: 出现错误(类型=错误请求,状态=400)。无法将类型[java.lang.String]的值转换为所需类型[java.util.Date];嵌套异常为org.springframework.core.convert.conversionfailedexception:无法将值“Wed Jun 08 00:00:00 WET 2016”从类型[java.lan

  • 我有两个实体,它们使用一个主键互相引用,主键是一个实体的整数。我不确定我做这件事的方式是否正确。 下面是引用主键id为int的实体 下面是我们从上面的实体中将外键设置为Kmichango kandaMchango的实体。 这里是表单的一部分,我在这里提交了用户在jumuiya_michango_form.html中提供的数据 下面是我的控制器中用于链接到表单和发布数据的两个方法 在我提交表单后,我