当前位置: 首页 > news >正文

mybatis-plus的一般实现过程(超详细)

MyBatis-Plus 是 MyBatis 的增强工具,在 MyBatis 的基础上提供了许多实用的功能,如分页查询、条件构造器、自动填充等。下面是 MyBatis-Plus 的完整代码实现流程:

①、引入 MyBatis-Plus 依赖
在 Maven 中,可以通过以下方式引入 MyBatis-Plus 依赖:

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

②、配置 MyBatis-Plus
在 Spring Boot 中,可以通过配置文件 application.propertiesapplication.yml 来配置 MyBatis-Plus。以下是一个简单的配置示例:

mybatis-plus:mapper-locations: classpath:/mapper/*.xmlglobal-config:db-config:id-type: autofield-strategy: not_null

其中,mapper-locations 配置了 MyBatis Mapper 文件的路径,global-config 配置了全局的 MyBatis-Plus 配置。

③、定义实体类
定义实体类时,需要注意以下几点:

实体类需要使用 @TableName 注解指定对应的数据库表名;
实体类需要使用 @TableId 注解指定主键字段;
实体类需要使用 @TableField 注解指定非主键字段。
以下是一个简单的实体类示例:

@Data
@TableName("user")
public class User {@TableId(type = IdType.AUTO)private Long id;@TableField("name")private String name;@TableField("age")private Integer age;@TableField("email")private String email;
}

④、定义 Mapper 接口
Mapper 接口定义了对数据库的操作,其中可以使用 MyBatis-Plus 提供的通用 Mapper 或自定义 SQL 语句。

以下是一个简单的 Mapper 接口示例:

@Mapper
public interface UserMapper extends BaseMapper<User> {// 自定义 SQL 语句 ①、我们可以在XML文件中定义具体语句,但需要注意如果在Xml文件中定义,需要在yml配置文件或者properties配置文件中配置XX.xml文件所在的路径。②、可以直接使用注解)    @Select("SELECT * FROM user WHERE name = #{name}")List<User> selectByName(String name);
}

在配置文件 application.yml 或 application.properties 中,需要配置 Mapper 文件的路径:

mybatis-plus:mapper-locations: classpath:/mapper/*.xml

其中,继承了 BaseMapper<User> 后,就可以使用 MyBatis-Plus 提供的通用 Mapper 方法。同时,也可以定义自定义 SQL 语句。

使用 Service 层
Service 层是业务逻辑层,通常用于封装业务逻辑和操作数据库的代码。在使用 MyBatis-Plus 时,可以使用其提供的 Service 层,也可以自定义 Service 层。

以下是一个简单的 Service 层示例:

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {@Overridepublic List<User> getUserByName(String name) {return baseMapper.selectByName(name);}
}

其中,继承了 ServiceImpl<UserMapper, User> 后,就可以使用 MyBatis-Plus 提供的 Service 方法。同时,也可以定义自定义 Service 方法。

需要注意的是我们的@service注解是写在我们XxxServiceIml上的。而我们的Xxxservice类是不需要使用注解的。平常直接使用XxxServiceimpl.方法就行。

http://www.lryc.cn/news/34766.html

相关文章:

  • Spark(5):RDD概述
  • 面向对象 - 继承
  • 计算机网络的166个概念你知道几个 第十二部分
  • 【RabbitMQ】RabbitMQ各版本的兼容性与技术支持时限
  • 【Git】P5 Git 远程仓库(3)pull 发生冲突
  • 关于世界坐标系,相机坐标系,图像坐标系,像素坐标系的一些理解
  • 企业防护ddos的注意事项,你知道吗?
  • RocketMQ如何测试
  • SpringBoot中的bean注入方式和原理介绍
  • ESP32设备驱动-RFID-RC522模块驱动
  • SMETA认证有些客户是需要做窗口期的
  • 面向对象设计模式:创建型模式之原型模式
  • 三维重建(单目、双目、多目、点云、SFM、SLAM)
  • Java中的final和权限修饰符
  • MySQL的基本语句(SELECT型)
  • 日志服务搭建-ES-FileBeat-Kibana
  • 大数据架构设计与数据计算流程
  • 207. 课程表
  • 2023-03-08 mysql列存储数据库-查询执行过程分析
  • 各种激活函数的计算公式、图像以及实现代码
  • ArangoDB
  • MySQL8.0Linux安装及主从的搭建
  • 苹果新专利实现无线技术传输睡眠数据,蓝牙在智能家居中的应用
  • 银行数字化转型导师坚鹏:数字化转型为什么需要致良知与知行合一
  • Web前端学习:章三 -- JavaScript预热(二)
  • Excel绘制数据对比表格-表格可视化
  • 究竟是谁负了谁,来自底层测试的2022年终总结
  • C++——IO流
  • 网络 | UDP与TCP协议讲解 | TCP可靠性是怎样实现的?
  • JavaEE——简单介绍Thread类以及线程的基本操作