cgb2007-jingtao day03

1. MybatisPlus

Introducción de 1.1 MP

MyBatis-Plus (MP para abreviar) es una herramienta de mejora para MyBatis. Sobre la base de MyBatis, solo mejora y no cambia. Nace para simplificar el desarrollo y mejorar la eficiencia.

1.2 Características

Sin intrusión: solo realice mejoras sin hacer cambios. La introducción de este no afectará el proyecto existente y es tan suave como la seda.
Pequeña pérdida: CURD básico se inyectará automáticamente al inicio, el rendimiento es básicamente sin pérdida, operación directa orientada a objetos operación
CRUD potente : Asignador general y servicio general integrados, solo una pequeña cantidad de configuración puede realizar la mayoría de las operaciones CRUD de una sola tabla y un constructor de condiciones más potente, que puede satisfacer diversas necesidades de uso.
Admite la invocación de formularios Lambda: es conveniente escribir varios tipos a través de expresiones Lambda Ya no es necesario preocuparse por escribir campos incorrectos.
Admite la generación automática de claves primarias: admite hasta 4 estrategias de claves primarias (incluida la secuencia del generador de ID único distribuido), se puede configurar libremente y resuelve perfectamente problemas de claves primarias.
Admite el modo ActiveRecord: admite llamadas de formularios ActiveRecord , La clase de entidad solo necesita heredar la clase Model para realizar potentes operaciones CRUD.
Admite operaciones generales globales personalizadas: admite la inyección de métodos generales globales (escribe una vez, usa en cualquier lugar)
Generador de código incorporado: usa código o complemento Maven para generar rápidamente Mapper y Model , Servicio, código de capa de controlador, motor de plantilla de soporte y más configuraciones personalizadas están esperando que use el
complemento de paginación incorporado: según la paginación física de MyBatis, los desarrolladores no necesitan preocuparse por operaciones específicas. Una vez configurado el complemento, escribir paginación es equivalente a una consulta de lista normal
El complemento de paginación admite una variedad de bases de datos: admite MySQL, MariaDB, Oracle, DB2, H2, HSQL, SQLite, Postgre, SQLServer y otros
complementos de análisis de rendimiento integrados en la base de datos : puede generar declaraciones Sql y su tiempo de ejecución, se recomienda habilitar esta función durante el desarrollo y las pruebas , Puede descubrir rápidamente consultas lentas
Complemento de interceptación global integrado: proporciona un análisis inteligente y bloqueo de las operaciones de eliminación y actualización de toda la tabla, y también puede personalizar las reglas de interceptación para evitar errores de operación.

1.3 pensamiento ORM

1.3.1 Escenario empresarial

Un programador que se ha estado desarrollando durante 30 años, es bastante competente en los negocios, pero para completar el negocio, también necesita escribir sentencias SQL particularmente simples
Requisitos: ¿Se puede mejorar efectivamente la eficiencia del desarrollo?

1.3.2 Introducción a ORM

El mapeo relacional de objetos (inglés: mapeo relacional de objetos, ORM para abreviar o mapeo O / RM o O / R) es una técnica de programación utilizada para implementar la conversión de datos entre diferentes tipos de sistemas en lenguajes de programación orientados a objetos . De hecho, crea una "base de datos de objetos virtuales" que se puede utilizar en lenguajes de programación. Hay muchos productos ORM gratuitos y de pago, y algunos programadores prefieren crear sus propias herramientas ORM.

Presagio del conocimiento: la
declaración SQL es un lenguaje orientado a procesos . Sql: seleccione * del objeto del conjunto de resultados del conjunto de resultados del usuario ~~~~ Los objetos del usuario deben encapsular manualmente los resultados, y la eficiencia del desarrollo es baja.

ORM方式:  以对象的方法操作数据库, **可以实现结果集与对象的自动的映射**  不需要自己手写.

1.4 Descripción del principio de funcionamiento de MybatisPlus

1. 对象与哪张表要完成映射     		可以自定义注解进行标识.
2. 对象的属性与表中的字段如何一一对应.		起名时应该写成一样的. 利用特定的注解指定.
3. 工具方法如何简化    MP动态的生成CURD操作的接口,只要其他的Mapper继承接口即可
4. 对象如何转化为SQL语句		    利用对象中的属性及属性的值动态**拼接sql**,之后交给Mybatis(jdbc)去执行
eg.userMapper.insert(user对象)
eg:deptMapper.insert(dept对象)
sql: insert into 表名(字段信息....) values(属性值....)

Implementación específica de 1.5 MP

1.5.1 Importar paquete de jar

Nota: El paquete Mybatisplus ya contiene información de Mybatis, por lo que es necesario eliminar el paquete original.

	<!--spring整合mybatis-plus -->
		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>mybatis-plus-boot-starter</artifactId>
			<version>3.2.0</version>
		</dependency>

1.5.2 Editar objeto POJO

Inserte la descripción de la imagen aquí

1.5.3 Implementar la herencia de la interfaz

Inserte la descripción de la imagen aquí

1.5.4 Editar archivo de configuración YML

Inserte la descripción de la imagen aquí

1.5.5 Caso de introducción

Utilice el mecanismo MP para la consulta
Inserte la descripción de la imagen aquí

1.5.6 Impresión de sentencias SQL

server:
  port: 8090
  servlet:
    context-path: /
spring:
  datasource:
    #驱动版本问题 高版本需要添加cj关键字  一般可以省略
    #driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/jtdb?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true
    username: root
    password: root

mybatis-plus:
  #别名包定义 Mapper的resultType中只需要写类名 之后自动拼接即可
  type-aliases-package: com.jt.pojo
  #加载指定的xml映射文件
  mapper-locations: classpath:/mybatis/mappers/*.xml
  #开启驼峰映射
  configuration:
    map-underscore-to-camel-case: true


# 实现sql打印
logging:
  level:
    com.jt.mapper: debug

Supongo que te gusta

Origin blog.csdn.net/qq_16804847/article/details/109378783
Recomendado
Clasificación