mybatis用string接收number时报java.math.BigDecimal cannot be cast to java.lang.String

945 阅读1分钟

当我用mybatis返回数据用resultType="map"接收类型为number的字段时,前台用list<Map<String,String>>接收。

但是当想用String类型使用这个字段是,确报错

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

List<Map<String,String>> list = new ArrayList<Map<String,String>>();
        try {
            list = orderService.getLevelPackageDetail1(p);
            String pri=list.get(0).get("T_PRICE");

用这种方式转化还是报这个错

String pri=list.get(0).get("T_PRICE").toString();

解决办法

用String.valueOf()转换就不会报错了。

String pri=String.valueOf(list.get(0).get("T_PRICE"));

\