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

mybatis-plus从入门到入土(一):快速开始

​ 朋友们, 大家好, 从今天开始我想开一个系列博客。名字起的比较随意就叫Mybatis-Plus从入门到入土, 这系列博客的定位是从基础使用开始, 然后逐步深入全面的了解Mybatis-Plus框架, 写这个博客的主要原因是工作中经常用到Mybatis-Plus框架, 因而对这个框架相对比较了解一些, 顺便在写作的过程中对自身知识查漏补缺, 欢迎小伙伴和我一同步入Mybatis-Plus之旅, 我们马上起飞。

快速开始

我们从Mybatis-Plus官网的快速开始一步步的学习这个框架。

引入Mybatis-Plus相关依赖

对于SpringBoot项目来说, Mybatis-Plus的依赖相对简单, 只有一个starter。这里我基于Spring Boot2mybatis-plus 3.5.12, 今后的学习也基于该版本。

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

配置

  • application.yml 配置文件中添加 H2 数据库的相关配置:
# DataSource Config
spring:datasource:driver-class-name: org.h2.Driverusername: rootpassword: testsql:init:schema-locations: classpath:db/schema-h2.sqldata-locations: classpath:db/data-h2.sql

这里基于H2数据库, 如果小伙伴手头有其他数据库也可以使用, sql-init中指定的是数据库的表结构示例数据。关于mybatis-plus具体支持哪些数据库可以参考https://baomidou.com/introduce/。

  • 在 Spring Boot 启动类中添加 @MapperScan 注解,扫描 Mapper 文件夹:
@SpringBootApplication
@MapperScan("com.example.mybatispluslearning.mapper")
public class MybatisPlusLearningApplication {public static void main(String[] args) {SpringApplication.run(MybatisPlusLearningApplication.class, args);}}

编码

创建一个User类

@Data
@TableName("sys_user")
public class User {private Long id;private String name;private Integer age;private String email;
}

创建一个UserMapper接口, 这个类继承了mybatis-plus提供的BaseMapper接口

public interface UserMapper extends BaseMapper<User> {}

测试

@SpringBootTest
public class SampleTest {@Autowiredprivate UserMapper userMapper;@Testpublic void testSelect() {System.out.println(("----- selectAll method test ------"));List<User> userList = userMapper.selectList(null);Assert.isTrue(5 == userList.size(), "");userList.forEach(System.out::println);}}

在这里插入图片描述

好了, 小伙伴们, 第一讲就讲完了, 敬请收看第二讲。

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

相关文章:

  • 云端可视化耦合电磁场:麦克斯韦方程组的应用-AI云计算数值分析和代码验证
  • Spring Cloud:服务监控与追踪的高级实践
  • 为什么要安装create-vue@3.17.0
  • 2025年渗透测试面试题总结-2025年HW(护网面试) 20(题目+回答)
  • 通过交互式可视化探索波动方程-AI云计算数值分析和代码验证
  • redisson看门狗实现原理
  • ai数据分析黄金
  • RuoYi-Vue学习环境搭建
  • Vue 与react 生命周期对比
  • WSL连不上网解决方案(包含WSL虚拟交换机不正常以及WSL网络配置不正常两种解决方案)
  • wpf的Binding之UpdateSourceTrigger
  • 【惯性导航知识杂记7】舒拉 (休拉、舒勒)周期、傅科周期、地球周期
  • Boss:技能选取——随机概率
  • 【51单片机按下按键1,8位共阴极数码管输出2022-606。按下按键2,8位共阴极数码管输出606-1132。】2022-6-10
  • 现代C++ 文件系统库
  • Spring生态创新应用
  • 学习React官方文档(描述UI)
  • 【机器学习实战笔记 13】集成学习:GBDT算法
  • (七)集成学习
  • stm32hal模块驱动(1)hpdl1414驱动
  • 机器学习7——神经网络上
  • 家谱族谱生成制作小工具PC/H5小程序开源
  • 【系统分析师】高分论文:论软件过程改进
  • UR Studio仿真工具上线助力协作机器人快速部署与精准配置模拟
  • Python 数据分析与可视化 Day 11 - 特征工程基础
  • 【GESP 四级】一个程序掌握大部分知识点
  • 【算法设计与分析】(三)二分搜索技术与大整数乘法
  • 信创背景下应用软件迁移解析:从政策解读到落地实践方案
  • vllm部署私有智谱大模型
  • AI算力综述和资料整理