mybatis plus 分页查询Java怎么写
MyBatis-Plus是一个基于MyBatis的增强工具,在进行分页查询时可以使用其提供的分页插件来简化操作。
首先,需要引入MyBatis-Plus的依赖。可以在Maven中添加以下依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>最新版本</version>
</dependency>
然后,在Mapper接口中使用com.baomidou.mybatisplus.core.mapper.BaseMapper作为父类,该类提供了一些常用的增删改查方法,包括分页查询。
接下来,可以在Service层中使用com.baomidou.mybatisplus.extension.service.impl.ServiceImpl作为父类,该类提供了一些常用的增删改查方法的实现,包括分页查询。
最后,在Controller层中调用Service层的方法来进行分页查询。可以使用com.baomidou.mybatisplus.extension.plugins.pagination.Page类来表示分页参数,并将该对象作为参数传递给Service层的分页查询方法。
下面是一个示例代码:
// Mapper接口
public interface UserMapper extends BaseMapper<User> {
}
// Service接口
public interface UserService extends IService<User> {
PageInfo<User> listByPage(Page<User> page);
}
// Service实现类
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
@Override
public PageInfo<User> listByPage(Page<User> page) {
IPage<User> iPage = baseMapper.selectPage(page, null);
return new PageInfo<>(iPage);
}
}
// Controller类
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/listByPage")
public PageInfo<User> listByPage(@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "10") Integer pageSize) {
Page<User> page = new Page<>(pageNum, pageSize);
return userService.listByPage(page);
}
}
在上述示例中,通过调用baseMapper.selectPage(page, null)来进行分页查询,page表示分页参数,null表示查询条件。最后将查询结果转换为PageInfo对象返回给前端。
注意:示例中的User类是一个实体类,需要在数据库中创建对应的表,并使用@Table注解指定表名和字段映射关系。
这样,就可以使用MyBatis-Plus进行分页查询了
原文地址: https://www.cveoy.top/t/topic/hKuz 著作权归作者所有。请勿转载和采集!