Problemas encontrados en la operación de paginación MybatisPlus

1. La aparición de problemas

Después de escribir la consulta de paginación del empleado, se ejecuta la prueba y se informa un error:数据库异常,操作失败!
Insertar descripción de la imagen aquí

2. Verifique la declaración SQL de acuerdo con las indicaciones.

En primer lugar, sospeche: el servicio MySQL no se inicia, el servidor no funciona o hay un problema con la ortografía de la declaración SQL.
Copié el registro SQL en la consola a Navicat y la eliminación LIMIT 10;pudo producir resultados, lo que básicamente eliminó este problema. (¡¡¡Debe activarse la importancia de los registros !!!)

3. Verifique las versiones y configuraciones de las dependencias.

Entonces sospeché: hay algún problema con la configuración de MyBatisPlus. Después de verificar la información de la versión de MyBatisPlus y el contenido de configuración, siento que hay pocas posibilidades de que se produzca un error aquí.

4. Encuentre información de error específica

Quería verificar los resultados del error en Idea y descubrí que no había ningún mensaje de error en Idea.
Por lo tanto, se infiere que este mensaje de error proviene de la clase de manejo de excepciones global escrita por mí. Entonces ingresé el método de manejo de excepciones global e intenté imprimir la información de la excepción:

package com.sky.server.config.exception;

import com.sky.server.pojo.RespBean;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

import java.sql.SQLException;
import java.sql.SQLIntegrityConstraintViolationException;

/**
 * 全局异常处理
 */
@RestControllerAdvice
public class GlobalException {
    
    
    @ExceptionHandler(SQLException.class)
    public RespBean mySqlException(SQLException e){
    
    
        if (e instanceof SQLIntegrityConstraintViolationException){
    
    
            return RespBean.error("SQL完整性约束违反异常: 该数据有关联数据,操作失败!");
        }
        /** 添加内容,打印异常信息 **/
        System.out.println("数据库异常具体信息为:");
        System.out.println(e.getMessage());
        /** 添加内容,打印异常信息 **/
        return RespBean.error("数据库异常,操作失败!");
    }
}

Después de ejecutarlo, el resultado impreso es: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 10' at line 37
Análisis: hay un problema cerca del LÍMITE 10. Luego descubrí que había un punto y coma adicional " "
escrito después de e.id al final de la declaración SQL. Simplemente elimine el punto y coma.;
Insertar descripción de la imagen aquí

5. Resumen

En realidad, este error no es un gran problema, pero todavía hay algunos puntos que requieren atención:

  1. Si no está familiarizado con la declaración SQL, puede localizar el problema con la declaración SQL desde el principio.
  2. Si hay un error en el campo de configuración XML, se informará un mensaje de error en la consola de Idea.
  3. Cuando el resultado es un error pero no hay ningún mensaje de error en la consola, significa que la excepción ha sido detectada y procesada. Imprimir el mensaje de excepción suele ser lo más útil.
  4. No escribí " " al realizar la paginación antes , por lo que este problema no ocurrió. Siempre he pensado que está bien escribir o no " " al final de la declaración SQL escrita en el archivo XML de MyBatisPlus . Este incidente me recuerda que no debo escribir " " al final de la declaración SQL.

Supongo que te gusta

Origin blog.csdn.net/qq_38662733/article/details/127074190
Recomendado
Clasificación