mybatisplus 常见查询
时间: 2023-09-25 21:09:59 浏览: 75
MyBatis-Plus提供了一些常见的查询方法,可以通过继承BaseMapper接口来使用这些方法。其中一些常见的查询方法包括:
1. 根据ID查询记录:可以使用getById方法,它接受一个Serializable类型的参数,表示要查询的记录的ID。
2. 根据条件查询一条记录:可以使用getOne方法,它接受一个Wrapper类型的参数,用于指定查询条件。如果查询结果有多个记录,该方法会随机选择一条返回。如果希望限制只返回一条记录,可以在Wrapper中添加last("LIMIT 1")限制条件。
3. 根据条件查询一条记录,并且可以选择是否抛出异常:可以使用getOne方法,它接受两个参数,第一个参数是Wrapper类型的查询条件,第二个参数是一个boolean值,表示当查询结果为空时是否抛出异常。
4. 根据条件查询一条记录并返回一个Map对象:可以使用getMap方法,它接受一个Wrapper类型的查询条件,返回一个Map<String, Object>类型的结果。
5. 根据条件查询一条记录并返回一个自定义类型的对象:可以使用getObj方法,它接受两个参数,第一个参数是Wrapper类型的查询条件,第二个参数是一个Function类型的映射函数,用于将查询结果转换成指定的类型。
继承BaseMapper接口后,可以直接使用这些查询方法进行常见的查询操作。
相关问题
mybatisplus 常见查询
Mybatis-Plus提供了一些常见的查询方法,其中包括:
- 根据ID查询单个实体对象:使用BaseMapper的getById方法,传入要查询的实体的ID,可以获取到对应的实体对象。
- 根据条件查询单个实体对象:使用BaseMapper的getOne方法,传入一个Wrapper(条件构造器),可以根据条件查询到满足条件的单个实体对象。如果查询结果有多个实体对象,会抛出异常,可以通过加上限制条件wrapper.last("LIMIT 1")来随机取一条。
- 根据条件查询单个字段值:使用BaseMapper的getObj方法,传入一个Wrapper和一个Function,可以根据条件查询到满足条件的单个字段值。
- 根据条件查询单个实体对象的Map表示:使用BaseMapper的getMap方法,传入一个Wrapper,可以根据条件查询到满足条件的单个实体对象的Map表示。
除了以上常见的查询方法,MyBatis-Plus还提供了其他更多的查询方法,可以根据具体的业务需求进行选择和使用。通过继承BaseMapper接口,我们可以直接使用这些方法,无需自己编写SQL语句。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [MybatisPlus基本查询](https://blog.csdn.net/qq_42057154/article/details/126598961)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
mybatisplus分页查询
MyBatis Plus 是一个用于简化 MyBatis 使用的框架。其中,分页查询是一种常见的数据库查询方式,用于一次只返回部分数据。
在 MyBatis Plus 中,可以使用 Page 对象来实现分页查询。具体的使用方法如下:
1. 在 Mapper 接口中声明分页查询方法,如:
```
List<User> selectPage(Page<User> page, @Param("state") Integer state);
```
2. 在 Mapper 接口的 XML 文件中,使用 `limit` 关键字来实现分页,如:
```
<select id="selectPage" resultType="com.baomidou.mybatisplus.extension.plugins.pagination.Page">
select * from user
<where>
<if test="state != null">
state = #{state}
</if>
</where>
limit #{page.offset}, #{page.size}
</select>
```
3. 在调用 Mapper 接口的方法时,传入 Page 对象即可实现分页查询,如:
```
Page<User> page = new Page<>(1, 10);
List<User> users = userMapper.selectPage(page, 1);
```
这样,MyBatis Plus 就会自动根据 Page 对象中的 offset 和 size 参数来执行分页查询。
此外,MyBatis Plus 还提供了很多其他方便的分页功能,例如自动查询总记录数、自动生成分页 SQL 等。有关 MyBatis Plus 的更多信息,可以参考官方文档:https://mybatis.plus/guide/page.html
阅读全文