一个Mybatis异常,引发出来的知识点:泛型类型擦除问题

1、Mybatis中配置为 listBussOrdersForShouXinLEGTotalBussNo方法  返回类型 resultType="map":

 

 2、java代码中dao层,访问数据库Mapper的配置返回类型为 List<String>:

 

 3、在dao层调用数据方法,执行sql完毕以后,返回类型到List<String>集合中,此时没有报错,

继续调用下面的calculateShouXinTotal(list,listStringBussnos) 方法,处理返回结果数据:

 4、但是在debug执行的时候,通过 listStringBussnos.get(j) 获取,这里才报出来异常信息:

 5、报错信息如下:java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.String:

6、由于方法中是trows Exception,是在Controller方法中balanceDetailTotal  778行打印出来的异常 :

 7、所以在执行获取的时候,并没有报错:

 List<String> listStringBussnos = ordersDao.listBussOrdersForShouXinLEGTotalBussNo(where);

但是在把listStringBussnos传递给如下代码执行的时候,从list中获取,类型就匹配不上,报错了

calculateShouXinTotal(list,listStringBussnos)

这里涉及到泛型擦除问题:

参考帖: https://frank909.blog.csdn.net/article/details/76736356

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值