Consulta de paginación: combate real del proyecto Java

Directorio de artículos de la serie

Manejo de excepciones globales: proyectos prácticos de Java
Función de inicio de sesión perfecta: uso de filtros en
el desarrollo de backend de Java Ideas de módulos funcionales
Configuración automática de Spring Boot: cómo cambiar el servidor web incorporado
Implementación del proyecto SpringBoot
Esta serie de artículos se actualiza continuamente, para más artículos, por favor haga clic en mi ¡Mira la página de inicio!



prefacio

Consulta de paginación, todos deben haber entendido lo que es una consulta de paginación al leer este artículo. Esta función también es un punto de conocimiento del módulo funcional muy común en el proceso de desarrollo. La mayor parte de lo que el usuario ve en la página mostrada son los datos mostrados por la consulta de paginación. Cuando hay muchos datos, habrá un cuadro de búsqueda. Después de que el usuario ingrese la información en el cuadro de búsqueda, el fondo usará información borrosa. consulta para recuperar la información que el usuario buscó. El contenido relevante se muestra en la página para el usuario. Este proceso es inseparable de las consultas de paginación.

Sin embargo, es un proceso muy complicado escribir el código fuente para la consulta de paginación. Aquí Mybatis-Plus nos brinda la función de consulta de paginación, solo necesitamos escribir el código de lógica de negocios basado en el empaquetado en Mybatis-Plus (puedes usarlo), sin preocuparte de cómo se implementa la operación de consulta de paginación.

A continuación, implementaremos una consulta de paginación a través de un caso para mostrar la información del empleado en la página.


1. Dependencias de importación

Justo ahora hablábamos de la consulta de paginación, utilizando el complemento en MyBatis-Plus para realizar esta función. Para usar MyBatis-Plus, primero debe importar las dependencias requeridas.
Agregue dependencias en el archivo pom.xml, el código es el siguiente:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.2</version>
</dependency>

2. Configurar el complemento de paginación

Agregue la clase de configuración MybatisPlusConfig en el paquete de configuración. En esta clase, agregue el complemento de consulta de paginación PaginationInnerInterceptor(), que se cargará cuando se inicie el proyecto, y también podemos implementar el método de complemento de paginación en él.

/**
 * 配置MP的分页插件
 * */
@Configuration
public class MybatisPlusConfig {
    
    
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
    
    
        MybatisPlusInterceptor mybatisPlusInterceptor=new MybatisPlusInterceptor();

        mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return mybatisPlusInterceptor;
    }
}

3. Escribir código

3.1 Ver información de la interfaz

En la figura a continuación, podemos ver que el parámetro entrante es
página: los datos en qué página
tamaño de página: cuántos datos se muestran en una página
nombre: el parámetro al ingresar la información para filtrar y consultar La
ruta solicitada es empleado /página. Una solicitud enviada en modo GET.
Como se muestra abajo:
inserte la descripción de la imagen aquí

3.2 Implementar el método según la interfaz

Necesitamos saber que al devolver parámetros, el valor devuelto es la clase Page, que es la clase encapsulada por Mybatis-Plus, podemos encapsular los datos de la consulta y devolver la información de la página.
La lógica del código es la siguiente:
1. Primero, cree un constructor de paginación y pase el número de páginas que se consultarán y el tamaño de página de los datos que se consultarán en cada página. Así: Página pageInfo=nueva página (página, tamaño de página);

2. Luego use LambdaQueryWrapper de Mybatis-Plus para realizar una consulta condicional Nota: necesitamos usar una consulta difusa para el parámetro de nombre ingresado por el usuario aquí.

3. Finalmente, llame al método de página de Mybatis-Plus, el primer parámetro es la información de pageInfo que se va a crear, y el segundo es la condición de consulta queryWrapper.

el código se muestra a continuación:

/**
     * 员工信息分页查询
     * @param page
     * @param pageSize
     * @param name
     * @return
     */
    @GetMapping("/page")
    public R<Page> page(int page,int pageSize,String name){
    
    
        //创建分页构造器
        Page pageInfo=new Page(page,pageSize);
        //创建条件构造器
        LambdaQueryWrapper<Employee> queryWrapper=new LambdaQueryWrapper<>();
        //查询条件
        queryWrapper.like(StringUtils.isNotEmpty(name),Employee::getName,name);
        //对查询结果排序
        queryWrapper.orderByDesc(Employee::getUpdateTime);
        //执行查询
        employeeService.page(pageInfo,queryWrapper);
        return R.success(pageInfo);
    }

3.3 Efecto de visualización de página

En la figura a continuación, puede ver que la primera página de datos en la consulta predeterminada es 5, y mi base de datos tiene 8 datos, divididos en 2 páginas.

Si hace clic en la segunda página, la información del parámetro es page=2&pageSize=5, pero los datos de la segunda página no son suficientes para 5 elementos y se mostrarán los 3 elementos restantes en la tabla de datos. Agregar el parámetro nombre es consultar la información correspondiente según el nombre del empleado.
inserte la descripción de la imagen aquí


Resumir

La consulta de paginación se ha implementado aquí Aquí explicamos principalmente el uso de la función de consulta de paginación y cómo usar la función de paginación. Pero al igual que el eco de datos relacionado con cómo se realiza la página de inicio, los puntos de conocimiento de front-end diseñados en este caso, como las solicitudes y estilos asíncronos de axios, no se muestran. Aquí todavía nos enfocamos en el desarrollo e implementación de Java back-end.

Del artículo, también puede ver que MyBatis-Plus nos brinda muchas funciones poderosas para que podamos simplificar el desarrollo. Ha mejorado mucho nuestra eficiencia de desarrollo y podemos centrarnos más en el procesamiento de la lógica empresarial. Los amigos que no han estudiado MyBatis-Plus sugieren aprender a aprender (a base de aprender MyBatis). Porque si aprende directamente MP (MyBatis-Plus para abreviar) sin aprender MyBatis, todavía hay una gran falta de base subyacente.

Todavía necesito trabajar duro. Los amigos que estén interesados ​​en el desarrollo de back-end de Java pueden comunicarse en mensajes privados ~

Supongo que te gusta

Origin blog.csdn.net/weixin_52258054/article/details/129048666
Recomendado
Clasificación