mybatis plus分页

admin 27 0

MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,简化开发、提高效率。

MyBatis-Plus 提供了分页插件 Mybatis-PlusInterceptor,可以很方便地实现分页功能。

以下是使用 MyBatis-Plus 分页插件的步骤:

1. 在 `config` 文件下创建 `MybatisPlusConfig.class` 文件,用来添加分页插件。

2. 在 `MybatisPlusConfig` 类中添加分页插件:

@Configuration
@MapperScan("com.example.demo.dao")
public class MybatisPlusConfig {
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInterceptor());
        return interceptor;
    }
}

3. 在需要分页的 Mapper 接口上添加分页注解:

@Mapper
public interface UserMapper extends BaseMapper<User> {
    @Select("SELECT * FROM user WHERE status = #{status}")
    @Page(size = 10, current = 1)
    List<User> selectUsers(@Param("status") String status);
}

4. 在 Service 或 Controller 中调用分页方法:

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    @Override
    public Page<User> getUsers(String status, int pageNo, int pageSize) {
        Page<User> page = new Page<>(pageNo, pageSize);
        List<User> users = userMapper.selectUsers(status);
        page.setRecords(users);
        return page;
    }
}