使用mybatisPlus实现分页

82 阅读1分钟

mybatisplus官网:mybatisplus

小编用的mybatisplus代码生成器生成模块(Boic) Boic

image.png

文件的关系如下:

BoicMapper:

/**
 * @author vitos
 * @since 2023-08-12
 */
@Mapper
public interface BoicMapper extends BaseMapper<Boic> {
        // 其他的sql查询补充(BaseMapper里面没有)
}

IBoicService

/**
 * @author vitos
 * @since 2023-08-12
 */

public interface IBoicService extends IService<Boic> {
    public IPage<Boic> getUserByPage(int pageNum, int pageSize);
}

Impl.BoicServiceImpl

/**
 * @author vitos
 * @since 2023-08-12
 */
@Service
public class BoicServiceImpl extends ServiceImpl<BoicMapper, Boic> implements IBoicService {

    @Autowired
    private BoicMapper boicMapper;
    @Override
    public IPage<Boic> getUserByPage(int pageNum, int pageSize) {
        Page<Boic> page = new Page<>(pageNum, pageSize);  // 创建分页对象

        IPage<Boic> boicPage = boicMapper.selectPage(page, null);  // 进行分页查询

        return boicPage;
    }
}

注意添加分业务插件MybatisPlusConfig.java

package com.heima.article.config;

import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MybatisPlusConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        //添加分页插件
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}