mybatis 如何返回list<String>类型数据

mybatis返回list<String>类型数据

studends表里一条teacher_id 数据对应多条 student_id数据,所以通过teacher_id 查询出来的student_id 是一个List。

mybatis代码如下:

//返回类型是String类型的student_id
<resultMap id="studentIdResult" type="java.lang.String" >
    <result column="student_id" property="studentId" jdbcType="VARCHAR" />
</resultMap>
//入参类型(parameterType)是String类型 teacherId
<select id="getStudentsByTeacherId" resultMap="studentIdResult" parameterType="java.lang.String" >
    select student_id
    from student
    where teacher_id = #{id,jdbcType=VARCHAR}
</select>

mybatis返回list<String>时resultType写String

查询出的结果可能有好多条记录,返回类型即是list。但resultType还是写成resultType="user"(user为集合list中的实体类),而不是写成resultType="java.util.List"

mybatis返回list<String>时resultType写java.lang.String而不是java.util.List

如果写成java.util.List时会报错

error querying database.the error occurred while handling results.

resultType也不能写成java.util.HashMap否则会返回[{"abcde"},{"fghilmn"},{"opqrst"}]

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Mybatis查询多条记录并返回List集合的方法

    实体对象如下: /** 使用lobmok插件 */ @Getter @Setter @NoArgsConstructor @ToString @EqualsAndHashCode public class Vendor { private String vend_id; private String vend_name; private String vend_address; private String vend_city; private String vend_state; privat

  • Mybatis查找返回Map,List集合类型的数据方式

    Mybatis查找返回Map,List集合类型的数据 一.查找返回Bean对象的List集合 基本与返回Bean对象没什么区别,resultType依然为Bean对象的全类名,只是接口中的方法类型要进行修改 public List<Employee> getEmpListByEmail(String email); 二.查询返回Bean对象的Map集合 同样,resultType依然为Bean对象的全类名,只是接口中的方法类型要进行修改,添加注解. @MapKey("Bean对象属性

  • MyBatis查询结果resultType返回值类型的说明

    一.返回一般数据类型 比如要根据 id 属性获得数据库中的某个字段值. mapper 接口: // 根据 id 获得数据库中的 username 字段的值 String getEmpNameById(Integer id); SQL 映射文件: <!-- 指定 resultType 返回值类型时 String 类型的, string 在这里是一个别名,代表的是 java.lang.String 对于引用数据类型,都是将大写字母转小写,比如 HashMap 对应的别名是 'hashmap' 基本数

  • mybatis查询实现返回List<Map>类型数据操作

    如下所示: **只要设定resultType而不设定resultMap就可以了**: < select id = "selectByPage" parameterType = "java.util.Map" resultType="java.util.Map" > select rs.*, rssetting.*, cp.STOCK_CODE, cp.UNAME from RS rs left join T_COMPANY cp on

  • mybatis 如何返回list<String>类型数据

    mybatis返回list<String>类型数据 studends表里一条teacher_id 数据对应多条 student_id数据,所以通过teacher_id 查询出来的student_id 是一个List. mybatis代码如下: //返回类型是String类型的student_id <resultMap id="studentIdResult" type="java.lang.String" > <result colum

  • mybatis查询返回Map<String,Object>类型的讲解

    目录 查询返回Map<String,Object>类型 mybatis返回结果为Map问题 查询返回Map<String,Object>类型 mybatis 查询返回Map<String,Object> 类型,平时没太注意怎么用,今天又遇到了总结记录一下,方便以后处理此类问题. Mapper.java中的方法: @MapKey("userId") Map<String,UserInfo> personalInfoByUserIds(Lis

  • MyBatis中如何接收String类型的参数实现

    在MyBatis学习初期,当parameterType的值为String<==>也就是接收String类型的参数时,我会通过value来接,如图: 通过value接收String类型的值舒适又简单,然而,直到有一天,我发现屡试不爽的value不给力了->接收String类型值的时候出了问题. 到底是什么凶残吓到了我的value->就是<bind/ >标签,大家请看: 这是配套数据表 查出来的结果让我很费解,用value接收值的时候出了这个问题(好好的"GZ&q

  • Mybatis查询返回Map<String,Object>类型实例详解

    这篇我们来说一下Mybatis的查询结果返回Map类型. 首先我们在企业开发中是很少使用到Map返回类型的,很多都是直接返回一个对象实体.尤其是苞米豆出了MP框架之后,XML都是很少写的. 那么在什么情况下需要使用Map来作为返回的结果类型呢? 案例:有一个模块A和模块B,A模块的POM依赖引入了B模块,A模块可以直接使用B模块的实体,但是B模块使用不到A模块的实体,如果在B模块POM中引入A模块的依赖,那么在运行时会出现依赖循环错误,这时候就需要自己写SQL来返回Map类型了,因为返回不了另一

  • javascript不同类型数据之间的运算的转换方法

    js中不同类型的基础数据之间可以转换,这种转换是有规则可寻的,并非随意的随机的.在js中有5种基础类型数据:string.number.boolean.null.undefined,其中,常用于计算或者比较的类型是前面三种. 基础数据之间的转换 其它类型转化数字 原始数据类型 目标类型Number undefined NaN null 0 false 0 true 1 数字串 相应的数字 不能转化的字符串 NaN 其它类型转化为字符串 原始数据类型 目标类型String undefined un

  • java Long类型转为String类型的两种方式及区别说明

    目录 java Long类型转为String类型 1.Long.ValueOf("String")返回Long包装类型数据 2.Long.parseLong("String")返回long基本数据类型 Java中Long.String.Date 类型之间的转换 1.Java.util.Date类型转换成long类型 2.long类型转换成java.util.Date类型 3.形如"2015-08-31 21:08:06"等格式化string类型转

  • Mybatis -如何处理clob类型数据

    Mybatis 处理clob类型数据 当执行sql语句,返回的是map类型时, 比如 public List<Map<String, Object>> query(@Param("sql") String sql) 得到的数据是List<Map>类型数据,此时,如果有返回的有clob字段时,数据是这样的oracle.sql.CLOB@63636de0 ,显然,这不是我想要的,我需要的是字符串数据 那么怎么来处理clob字段呢,很简单 就是定义类型处理

  • mybatis中如何传递单个String类型的参数

    目录 如何传递单个String类型的参数 mybatis仅传入一个String类型参数报错 目前我知道有两种方式解决问题 如何传递单个String类型的参数 使用mybatis接口参数只有一个string的时候 如果不指定@Param 的话mybatis去会把parameterType参数默认成接口的参数类型然后对于xml里的#{a}参数 去调用该类型下参数a 的get/set方法然后就报错了. 使用了@Param注解 mybatis就会一一对应赋值就不会导致这个错误. 接口如下: xml文件如

随机推荐