mybatisPlus返回结果集为空时,用Map接收返回什么,用单个对象接收返回什么,用List集合返回什么,用Page对象呢?

在 MyBatis-Plus 中,返回结果集为空时,不同类型的接收方式会有不同的表现:
1. **使用 `Map` 接收:**
   当使用 `Map` 作为返回类型时,如果查询结果集为空,MyBatis-Plus 通常会返回一个空的 `Map`,而不是 `null`。这是因为 MyBatis 的设计原则之一是避免返回 `null`,除非遇到特殊情况(如配置错误或查询异常)。在返回 `Map` 的情况下,如果查询结果为空,你将得到一个没有任何键值对的空 `Map`。
2. **使用单个对象(Entity)接收:**
   如果你使用单个实体对象(Entity)作为返回类型,并且查询结果集为空,MyBatis-Plus 会返回 `null`。因为单个对象期望的是查询结果集中的一行数据,如果没有数据,则无法实例化并填充该对象,所以返回 `null`。
3. **使用 `List` 集合接收:**
   当使用 `List` 集合作为返回类型时,如果查询结果集为空,MyBatis-Plus 会返回一个空的 `List`。这是因为 `List` 是一个集合类型,它可以包含零个或多个元素。当查询结果为空时,你会得到一个空的 `List`,而不是 `null`。
4. **使用 `Page` 对象接收:**
   `Page` 是 MyBatis-Plus 提供的一个分页对象,它包含了分页信息和结果集。当使用 `Page` 对象作为返回类型时,如果查询结果集为空,MyBatis-Plus 会返回一个 `Page` 对象,该对象的 `records` 属性(即结果集)将是一个空的 `List`。`Page` 对象的其他属性(如总记录数、总页数等)会根据查询的实际情况进行填充。即使结果集为空,`Page` 对象本身也不会是 `null`。
总结来说,MyBatis-Plus 在处理空结果集时,通常会返回一个空的集合或对象,而不是 `null`,除非遇到特殊情况。这种设计有助于避免在代码中处理 `null` 值时可能出现的空指针异常。然而,开发者仍然需要了解这些行为差异,并在编写代码时考虑到这些差异,以确保程序的健壮性和正确性。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值