En MyBatis-Plus, se obtiene una cantidad fija de datos de la tabla MySQL cada vez configurando la consulta de paginación hasta que se obtienen todos.

inserte la descripción de la imagen aquí

En MyBatis-Plus, puede obtener una cantidad fija de datos de la tabla MySQL cada vez configurando consultas de paginación hasta que se obtengan todos. Aquí hay un código de muestra simple:

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;

@Service
public class MyService {
    
    

    @Autowired
    private MyMapper myMapper;

    public List<MyEntity> getAllData() {
    
    
        List<MyEntity> allData = new ArrayList<>();
        QueryWrapper<MyEntity> queryWrapper = new QueryWrapper<>();
        int pageSize = 10; // 每页取的数量
        int pageNum = 1; // 当前页码
        IPage<MyEntity> page;
        do {
    
    
            // 设置分页参数
            page = new Page<>(pageNum, pageSize);
            // 查询一页数据
            IPage<MyEntity> result = myMapper.selectPage(page, queryWrapper);
            List<MyEntity> records = result.getRecords();
            // 将查询结果添加到总数据列表中
            allData.addAll(records);
            // 更新当前页码
            pageNum++;
            // 判断是否还有下一页
        } while (page.hasNext());
        return allData;
    }
}

En el código de muestra anterior, usamos myMapper para realizar la operación de consulta de paginación, pageNum indica el número de página actual y pageSize indica el número de búsquedas por página. Use el método page.hasNext() para juzgar si hay una página siguiente, si es así, continúe consultando la página siguiente y agregue el resultado a la lista de datos totales allData hasta que se consulten todos los datos.

Cabe señalar que el código anterior utiliza el complemento de paginación proporcionado por MyBatis-Plus, y las dependencias correspondientes deben introducirse en el proyecto. Además, MyEntity es su clase de entidad y MyMapper es su interfaz Mapper, que se puede reemplazar de acuerdo con la situación real de su proyecto.

Supongo que te gusta

Origin blog.csdn.net/Xidian2850/article/details/130178713
Recomendado
Clasificación