本文主要是介绍java.lang.UnsupportedOperationException原因及处理方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
项目场景:
SSM框架整合
问题描述:
今天在请求数据库数据时报错java.lang.UnsupportedOperationException
从字面上理解错误的含义就是不支持的操作异常,后面定位到错误发生在数据库sql语句中,具体原因就是resultType="java.util.List"有问题。返回的结果是一个List类型的集合。
以下是
原因分析:
在我的mybatis返回数据库查询当前表中所有的数据时,返回值设置为list,而不是实体类对象
解决方案:
根据我在网上的搜索,了解到虽然查询的整张表,但mybatis的返回值类型resultType应为实体类对象,底层采用了list的put方法将每个查询的对象放入list中。
重点:
以下是关于mybatis中的返回值类型设置的规则
resultType:
1、基本类型 :resultType=基本类型
2、List类型: resultType=List中元素的类型
3、Map类型 单条记录:resultType =map
多条记录:resultType =Map中value的类型
1、如果返回值为基本类型,则resultType=基本类型,比如resultType=java.lang.Integer,那sql语句中只返回一个int类型数据,通常用于统计数量
2、如果返回值为list类型,则resultType=List中元素的类型,比如你需要返回一个List类型的数据,那么这里resultType=”java.lang.String”,如果需要返回一个实体类,那么resultType=”com.pjf.mybatis.car”以此类推。
3、如果返回值为map单条类型,比如{username=”张三”},那么resultType =”map”。
这篇关于java.lang.UnsupportedOperationException原因及处理方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!