Introducción a cómo utilizar MyBatis-Plus
MyBatis-Plus (MP para abreviar) es una herramienta mejorada basada en MyBatis, diseñada para simplificar el desarrollo de MyBatis. Proporciona una serie de funciones convenientes y características mejoradas que pueden ayudar a los desarrolladores a mejorar la eficiencia del desarrollo y reducir la duplicación de código. Este artículo presentará la instalación y el uso de MyBatis-Plus e ilustrará su uso a través de ejemplos.
Instalar
Antes de comenzar, asegúrese de haber importado MyBatis y los controladores de bases de datos relacionados a su proyecto. A continuación, instalaremos a través de Maven.
Agregue las siguientes dependencias al pom.xml
archivo :
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.4.3</version>
</dependency>
Esto agregará MyBatis-Plus a su proyecto.
configuración
Antes de que podamos comenzar a usar MyBatis-Plus, debemos configurarlo. Los principales elementos de configuración incluyen la conexión a la base de datos, el escaneo de entidades y el llenado automático de MyBatis-Plus.
Primero, abra el archivo de configuración del proyecto (como application.properties
o application.yml
), agregue la configuración de conexión de la base de datos:
spring:
datasource:
url: jdbc:mysql://localhost:3306/mybatis_plus_demo?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: root
password: your_password
driver-class-name: com.mysql.cj.jdbc.Driver
Luego, debemos configurar la ruta de escaneo de entidades de MyBatis-Plus, diciéndole dónde encontrar nuestra clase de entidad:
@Configuration
@MapperScan("com.example.demo.mapper")
public class MybatisPlusConfig {
}
Esto supone que sus clases de entidad se encuentran en com.example.demo.entity
el paquete .
Por último, podemos configurar la función de autocompletar de MyBatis-Plus. Primero, cree una clase que implemente MetaObjectHandler
la interfaz y anule los métodos en ella:
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
}
@Override
public void updateFill(MetaObject metaObject) {
this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
}
}
El LocalDateTime
tipo para representar el campo de tiempo. Luego, agregue @TableField(fill = FieldFill.INSERT_UPDATE)
una anotación , especificando que el campo se completa automáticamente al insertar y actualizar.
usar
Una vez que haya completado la configuración, puede comenzar a usar MyBatis-Plus para las operaciones de la base de datos.
Operaciones CRUD básicas
MyBatis-Plus proporciona una serie de métodos comunes para realizar operaciones CRUD, no necesita escribir mucho código repetitivo.
insertar datos
@Service
public class UserServiceImpl
extends ServiceImpl<UserMapper, User> implements UserService {
// ...
}
Al heredar ServiceImpl
y especificar el tipo de asignador correspondiente, puede usar directamente el método CRUD.
User user = new User();
user.setName("John");
user.setAge(25);
user.setEmail("[email protected]");
userService.save(user);
Esto insertará un nuevo dato de usuario en la base de datos.
actualizar datos
User user = userService.getById(1L);
user.setAge(26);
userService.updateById(user);
Esto actualizará el campo de edad del usuario según la clave principal.
borrar datos
userService.removeById(1L);
Esto eliminará los datos de usuario correspondientes según la clave principal.
Consulta de datos
List<User> userList = userService.list();
Esto devolverá una lista de todos los datos del usuario.
consulta condicional
Además de las operaciones CRUD generales, MyBatis-Plus también proporciona una potente función de consulta condicional, que puede consultar datos de acuerdo con condiciones específicas.
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.like("name", "John").lt("age", 30);
List<User> userList = userService.list(wrapper);
Esto consultará los datos de los usuarios cuyo primer nombre contenga "John" y cuya edad sea menor de 30 años.
epílogo
Este artículo presenta la instalación y el uso de MyBatis-Plus e ilustra sus operaciones CRUD básicas y funciones de consulta condicional a través de ejemplos. MyBatis-Plus es una herramienta poderosa y fácil de usar que ayuda a los desarrolladores a realizar operaciones de base de datos de manera más eficiente. ¡Espero que este artículo te ayude!
Documento de referencia: Documento oficial de MyBatis-Plus