java.math.BigDecimal cannot be cast to java.lang.String

JDBC方式获取数据库数据存在一个hashMap中,<String,String>,根据key拿一个金额的数据时,出现了这个问题,网上说直接后面.toString(),试了一下不行,下面这样才可以:

com.setRegisterCaptial(String.valueOf(map.get("RegCap")).toString());