如何将“ 24cd2ec2-6674-4aa2-a761-1b0a953124ba”(字符串对象)转换为BigDecimal

时间:2019-01-25 22:22:24

标签: java hibernate rest spring-boot spring-mvc

我有一个数据库表MyTable,该表具有类型myColumn的列VARCHAR(20)。我有一个Spring MVC应用程序,它在控制器级别接收POST请求。我正在尝试捕获请求的交易ID,并将其设置为BigDecimal类型的实体对象中的字段。我得到一个java.lang.NumberFormatException

例如:

String transactionID = "24cd2ec2-6674-4aa2-a761-1b0a953124ba";
entity.setTransactionID(new BigDecimal(transactionID));
entity.save();

任何解决此问题的方法都会有所帮助。

1 个答案:

答案 0 :(得分:0)

为了将String转换为BigDecimal,String应该包含可转换为十进制的数字值。

例如:-

String ID= "123.45";
System.out.println(new BigDecimal(ID)); // 123.45

如果相反,

String ID= "12-fe3.45";
System.out.println(new BigDecimal(ID)); // throw java.lang.NumberFormatException