MyBatis查询功能

查询一个实体类对象

  • 查询出来的数据只有一条,可以用User和User集合来接收
User getUserById(@Param("id") Integer id);

在这里插入图片描述

查询一个list集合

  • 只能用list集合来接收
    List<User> getAllUser();

在这里插入图片描述

单行单列的数据

在这里插入图片描述
在这里插入图片描述

单条数据 Map集合

  • 查询的结果没有一个实体类与他相对应

  • mapper接口
    Map<String,Object> getUserByIdToMap(@Param("id") Integer id);
  • xml
    <select id="getUserByIdToMap" resultType="java.util.Map">
        select * from t_user where id = #{id}
    </select>
  • 测试类
    @Test
    public void testGetUserByIdToMap(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        Map<String, Object> user = mapper.getUserByIdToMap(1);
        System.out.println(user);
    }
  • 结果
{password=123456, sex=, id=1, age=23, email=12345@qq.com, username=孙少聪}

多条数据 使用List

  • mapper接口
/**
     * 多条 map集合
     */
    List<Map<String,Object>> getAllUserToMap();
  • xml
    <select id="getAllUserToMap" resultType="java.util.Map">
        select * from t_user
    </select>
  • 测试类
    @Test
    public void testAllUserToMap(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        List<Map<String, Object>> users = mapper.getAllUserToMap();
        users.forEach(user -> System.out.println(user));
    }
  • 结果
{password=123456, sex=, id=1, age=23, email=12345@qq.com, username=孙少聪}
{password=123456, sex=, id=3, age=24, email=123456@qq.com, username=杨赛格}

@MapKey

    @MapKey("id")
    Map<String,Object> getAllUserToMap();
  • 结果
{1={password=123456, sex=, id=1, age=23, email=12345@qq.com, username=孙少聪}, 3={password=123456, sex=, id=3, age=24, email=123456@qq.com, username=杨赛格}}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值