Introducción a MyBatis-Plus

Uno: ventajas y desventajas de MyBatis

Ventaja:

  • Las declaraciones SQL se pueden controlar libremente, son más flexibles y tienen un mayor rendimiento.
  • SQL está separado del código y es fácil de leer y mantener.
  • Proporciona etiquetas XML para admitir la escritura de sentencias SQL dinámicas.

Desventaja:

  • 单表No existe un conjunto de operaciones listas para usar (CRUD) para operaciones simples 通用的增删改查, lo que requiere que escribamos un conjunto de ellas nosotros mismos. Aunque cada conjunto de SQL es muy simple, existen muchas operaciones de una sola tabla en los sistemas generales. En este tiempo, necesitaremos escribir muchos conjuntos, lo cual es muy engorroso y una pérdida de tiempo.

  • MyBatis en sí mismo no es lo suficientemente rico, pero es compatible con complementos, como sin complemento de paginación incorporado, sin soporte de identificación distribuida, etc.

La mayor deficiencia de MyBatis es que no proporciona un conjunto de operaciones de persistencia generales listas para usar para operaciones simples de una sola tabla. Esta es la mayor deficiencia. Para las funciones propias de MyBatis, no es lo suficientemente rico. De hecho , esto se puede lograr de otras maneras.

2: Introducción a MyBatis-Plus

MyBatis-PlusY Mapper4es para solucionar las carencias de funcionamiento de la mesa única de MyBatis, que se utilizan habitualmente en estas dos empresas tecnológicas. Personalmente, creo que Mapper4 no es tan fácil de usar como MyBatis-Plus, y siento que Mapper4 no es tan elegante como MyBatis-Plus en uso.

MyBatis-Plus ( https://mybatis.plus/ ) denominada MP es una herramienta de mejora de MyBatis, solo mejora y no cambia sobre la base de MyBatis, y nace para simplificar el desarrollo y mejorar la eficiencia. MyBatis-Plus puede completar rápidamente la operación de una sola tabla sin escribir sentencias SQL . La visión de MyBatis-Plus es convertirse en el mejor socio de MyBatis, al igual que 1P y 2P en Contra. Con amigos básicos, la eficiencia se duplica.

inserte la descripción de la imagen aquí

  • GitHub(https://github.com/baomidou/mybatis-plus)

  • Code Cloud (https://gitee.com/organizations/baomidou/) MyBatis-Plus es desarrollado por una 苞米豆organización llamada, la persona a cargo de la organización se llama 青苗, hay alrededor de 31 personas en la organización, todos deberían ser chinos .

  • MyBatis-Plus es muy activo en GitHub y los commits son muy frecuentes.

  • MyBatis-Plus es un código abierto de los chinos. Los chinos entienden mejor las necesidades de los chinos. Los documentos están en chino y los comentarios también están en chino.

  • La empresa de Internet de primera línea Tencent lo está utilizando, lo que demuestra que la fiabilidad es digna de confianza.

Tres: Características de MyBatis-Plus

  • No invasivo: solo realice mejoras sin cambiar, introducirlo no afectará los proyectos existentes, suave como la seda
  • Baja pérdida: CURD básico se inyecta automáticamente al inicio, el rendimiento es básicamente sin pérdidas y operación directa orientada a objetos
  • Potentes operaciones CRUD: mapeador general integrado y servicio general, la mayoría de las operaciones CRUD en una sola tabla se pueden realizar con solo una pequeña cantidad de configuración y constructores condicionales más potentes para satisfacer diversas necesidades de uso
  • Compatibilidad con la invocación de formularios Lambda: a través de expresiones Lambda, puede escribir fácilmente varias condiciones de consulta y no necesita preocuparse por escribir campos incorrectos.
  • Admite la generación automática de claves principales: admite hasta 4 estrategias de claves principales (incluido un generador de ID único distribuido - Secuencia), que se puede configurar libremente para resolver perfectamente el problema de la clave principal
  • Admite el modo ActiveRecord: admite la llamada de formulario ActiveRecord, la clase de entidad puede realizar potentes operaciones CRUD solo al heredar la clase Model
  • Admite operaciones generales globales personalizadas: admite inyección de método general global (escribir una vez, usar en cualquier lugar)
  • Generador de código incorporado: use el código o el complemento Maven para generar rápidamente Mapeador, Modelo, Servicio, Código de capa de controlador, motor de plantilla de soporte y más configuraciones personalizadas esperando que las use
  • Complemento de paginación incorporado: basado en la paginación física de MyBatis, los desarrolladores no necesitan preocuparse por operaciones específicas.Después de configurar el complemento, escribir paginación es equivalente a una consulta de lista ordinaria
  • El complemento de paginación admite múltiples bases de datos: MySQL, MariaDB, Oracle, DB2, H2, HSQL, SQLite, Postgre, SQLServer y otras bases de datos
  • Complemento de análisis de rendimiento incorporado: puede generar declaraciones Sql y su tiempo de ejecución. Se recomienda habilitar esta función durante el desarrollo y las pruebas, lo que puede identificar rápidamente las consultas lentas.
  • Complemento de intercepción global integrado: proporciona análisis inteligente y bloqueo de operaciones de eliminación y actualización en toda la tabla, y también puede personalizar las reglas de intercepción para evitar el mal funcionamiento

  • Complemento de paginación: MyBatis utiliza pagehelper como complemento de paginación.
  • Identificación distribuida: muchas empresas utilizan el algoritmo de copo de nieve de Twitter, IdWorker, como una identificación distribuida.
  • Autocompletar: Puede implementarse por valores predeterminados de la base de datos o rellenándolo usted mismo.
  • Generador de código: MyBatis también proporciona un generador de código. Si cree que el generador de código proporcionado por MyBatis no es bueno, puede escribir uno usted mismo. En realidad es muy simple. Podemos obtener todas las tablas y todos los datos correspondientes conectándonos a el campo base de datos., podemos generar el archivo nosotros mismos.
  • Valor de enumeración: Esta función es más práctica.
  • Eliminación lógica: podemos llamar directamente al método de actualización para modificar el estado.

Cuatro: Arquitectura MyBatis-Plus

inserte la descripción de la imagen aquí

  1. Busque clases de entidad.
  2. Analizar nombres de tablas y columnas a través de técnicas de reflexión.
  3. Genere declaraciones de inserción, actualización, eliminación y selección.
  4. Inyecte la declaración CRUD generada en el contenedor MyBatis.

Supongo que te gusta

Origin blog.csdn.net/weixin_45525272/article/details/123077950
Recomendado
Clasificación