Mybatis 遍歷 List >


在上一篇博客中總結了MyBatis Plus 實現多表分頁模糊查詢(鏈接在最后)。返回類型是編寫一個專門的vo類。這次是返回List < Map >

前言

​ 編寫一個專門的vo返回類,主要原因是如果其他地方也要用到到這個返回結果類,相比於map,返回類比較方便處理。

​ 但是,這次的返回類型吧並不常用,所以就考慮了List<Map<String,Object>>

解決

在上一篇博客的基礎,我們需要將返回類型換成List<Map<String,Object>>

下面舉一個例子,演示一下。

controller

@PostMapping("getAll")
public Result getAll(@RequestBody DormitoryStudent dormitoryStudent){
    List<Map<String,Object>> stus  =  dormitoryStudentService.getList(dormitoryStudent.getDormitoryId());
    return  Result.ok().data("list",stus);
}

service

public interface DormitoryStudentService extends IService<DormitoryStudent> {

    List<Map<String,Object>> getList(Integer dormitoryId);
}

serviceImpl

@Service
public class DormitoryStudentServiceImpl extends ServiceImpl<DormitoryStudentMapper, DormitoryStudent> implements DormitoryStudentService {

    @Override
    public List<Map<String,Object>> getList(Integer dormitoryId) {
        List<Map<String,Object>> stus = this.baseMapper.getList(dormitoryId);
        return stus;
    }
}

mapper

public interface DormitoryStudentMapper extends BaseMapper<DormitoryStudent> {

    List<Map<String,Object>> getList(@Param("dormitory_id") Integer dormitoryId);
}

mapper.xml

非常重要的一個點 resultType="java.util.HashMap"

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dj.dormitory.mapper.DormitoryStudentMapper">
    <select id="getList" resultType="java.util.HashMap">
        select tb_user.name student_name,tb_student.sno
        from tb_student
        left outer join tb_user on tb_user.id = tb_student.user_id
        left outer join tb_dormitory_student on tb_dormitory_student.student_id = tb_student.id
        where tb_dormitory_student.dormitory_id = #{dormitory_id}
    </select>
</mapper>

接口測試

image-20210205103128417

知識點補充

resultType:

  1. 基本類型 :resultType=基本類型

  2. List類型: resultType=List中元素的類型,注意:不是list

  3. Map類型

    • 單條記錄:resultType =map
    • 多條記錄:resultType = Map中value的類型

參考鏈接:

MyBatis Plus 實現多表分頁模糊查詢

https://www.cnblogs.com/libin6505/p/10036898.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM