MyBatis Plus 分页 例子
时间: 2023-08-14 12:51:42 浏览: 107
mybatis-plus分页查询的实现示例
以下是一个使用 MyBatis Plus 分页插件的示例:
```java
// 实体类
@Data
@TableName("user")
public class User {
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
private String email;
}
// Mapper 接口
public interface UserMapper extends BaseMapper<User> {
}
// Service 层
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public IPage<User> getUsersByPage(int pageNum, int pageSize) {
// 创建分页对象
Page<User> page = new Page<>(pageNum, pageSize);
// 执行分页查询
IPage<User> userPage = userMapper.selectPage(page, null);
return userPage;
}
}
// Controller 层
@RestController
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users")
public IPage<User> getUsers(@RequestParam(defaultValue = "1") int pageNum,
@RequestParam(defaultValue = "10") int pageSize) {
return userService.getUsersByPage(pageNum, pageSize);
}
}
```
在上述示例中,我们定义了一个User实体类,并使用`@TableName`注解将其与数据库表进行映射。接着,我们定义了一个UserMapper接口,继承自BaseMapper,并使用`@Autowired`注解注入到UserService中。在UserService中,我们使用MyBatis Plus提供的`selectPage`方法进行分页查询,并返回分页结果。最后,在UserController中,我们定义了一个GET请求的接口`/users`,可以通过该接口获取分页查询的结果。
通过以上示例,我们可以使用MyBatis Plus的分页插件轻松实现分页查询操作。
阅读全文