mybatis分页 总数
时间: 2023-10-22 20:31:30 浏览: 49
Mybatis分页查询可以通过两种方式获取总数。引用中提到的一种方式是无实体类的框架,可以直接将总数封装在参数中执行查询后从参数中获取。另外一种方式是通过在mapper.xml文件中添加查询总数的语句来获取总数。引用中的示例代码就展示了这种方式,在查询用户列表的select语句之后添加了一个查询数量的语句,通过调用found_rows()函数获取总数。所以,通过改造mapper.xml文件添加查询总数的语句,可以在Mybatis分页查询中获取总数。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
相关问题
mybatis 分页查询设置总数
在Mybatis中进行分页查询并设置总数可以通过以下步骤实现:
1. 在mapper.xml文件中,编写分页查询的sql语句,可以使用limit关键字进行物理分页。例如:SELECT * FROM table_name LIMIT offset, limit。其中,offset表示起始位置,limit表示每页显示的记录数量。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Mybatis分页查询,同时获取数据总数和分页数据列表](https://blog.csdn.net/LYY1448019681/article/details/120757553)[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^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [MYBATIS分页查询代码优化](https://blog.csdn.net/luomaCLX/article/details/127401196)[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^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
mybatis分页查询
MyBatis 是一款优秀的基于 Java 的持久层框架,支持定制化 SQL、存储过程以及高级映射。MyBatis 提供了非常方便的分页查询功能,下面是一个简单的示例:
1. 在 mapper.xml 文件中编写分页查询语句:
```xml
<select id="findUsers" parameterType="map" resultType="User">
select * from user
<where>
<if test="username != null and username != ''">
and username like #{username}
</if>
</where>
order by id desc
limit #{start}, #{pageSize}
</select>
```
2. 在 DAO 层中编写分页查询方法:
```java
public List<User> findUsers(String username, int start, int pageSize) {
Map<String, Object> params = new HashMap<>();
params.put("username", "%" + username + "%");
params.put("start", start);
params.put("pageSize", pageSize);
return sqlSession.selectList("findUsers", params);
}
```
3. 在 Service 层中调用分页查询方法:
```java
public Page<User> findUsers(String username, int pageNum, int pageSize) {
int start = (pageNum - 1) * pageSize;
List<User> users = userDao.findUsers(username, start, pageSize);
PageInfo<User> pageInfo = new PageInfo<>(users);
return new Page<>(pageInfo.getTotal(), users);
}
```
其中,Page 是一个自定义的分页对象,包含了查询结果总数和当前页的数据列表。上述示例中使用了 MyBatis 的分页插件 PageHelper 来实现分页查询,非常方便好用。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)