news 2026/8/25 13:24:49

mybatis-plus 快速体验

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
mybatis-plus 快速体验

文章目录

    • 数据库的user表
    • 目录结构
    • pom.xml 依赖
    • application.yml 配置文件
    • springboot应用的入口程序
    • 实体类User
    • mapper接口
    • 测试文件

数据库的user表

目录结构

pom.xml 依赖

<?xml version="1.0" encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.5</version></parent><groupId>com.atguigu</groupId><artifactId>mybatis-plus-quick</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><!-- 测试环境 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><!-- mybatis-plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version></dependency><!-- 数据库相关配置启动器 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><!-- druid启动器的依赖 --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-3-starter</artifactId><version>1.2.20</version></dependency><!-- 驱动类--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.28</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.28</version></dependency></dependencies><!-- SpringBoot应用打包插件 --><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

application.yml 配置文件

# 连接池配置spring:datasource:type:com.alibaba.druid.pool.DruidDataSourcedruid:url:jdbc:mysql:///mybatis-exampleusername:rootpassword:rootdriver-class-name:com.mysql.cj.jdbc.Drivermybatis-plus:configuration:log-impl:org.apache.ibatis.logging.stdout.StdOutImpl# 控制台输出sql语句

springboot应用的入口程序

packagecom.atguigu;importorg.mybatis.spring.annotation.MapperScan;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;@MapperScan("com.atguigu.mapper")@SpringBootApplicationpublicclassMain{publicstaticvoidmain(String[]args){SpringApplication.run(Main.class,args);}}

实体类User

packagecom.atguigu.pojo;importlombok.Data;@DatapublicclassUser{privateLongid;privateStringname;privateIntegerage;privateStringemail;}

mapper接口

packagecom.atguigu.mapper;importcom.atguigu.pojo.User;importcom.baomidou.mybatisplus.core.mapper.BaseMapper;"继承 mybatis-plus 提供的 基础Mapper接口,自带crud方法"publicinterfaceUserMapperextendsBaseMapper<User>{}

测试文件

packagecom.atguigu.test;importcom.atguigu.mapper.UserMapper;importcom.atguigu.pojo.User;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;@SpringBootTestpublicclassSpringBootMybatisPlusTest{@AutowiredprivateUserMapperuserMapper;@Testpublicvoidtest(){List<User>userList=userMapper.selectList(null);System.out.println("userList:"+userList);}// 测试 mybatis-plus 的插入@TestpublicvoidtestInsert(){Useruser=newUser();user.setAge(888);user.setName("test-insert");user.setEmail("tets@163.com");introw=userMapper.insert(user);// mybatis-plus 的自动插入,id是根据雪花算法生成的哦System.out.println("row:"+row);}// 测试mybatis-plus 的删除@TestpublicvoidtestDelete(){// 根据id删除introw=userMapper.deleteById(2020388575705047042L);System.out.println("row:"+row);// 根据 age = 20 这个条件 删除Mapparam=newHashMap();param.put("age",20);inti=userMapper.deleteByMap(param);System.out.println("i:"+i);}/** * TODO mybatis-plus的修改,有一个共同点,就是: * 当,实体的属性值为null,就不会修改,数据库表中对应的字段 */@TestpublicvoidtestUpdate(){Useruser=newUser();user.setId(1L);user.setAge(30);// 相当于执行这一条sql:update user set age = 30 where id = 1inti=userMapper.updateById(user);System.out.println("i:"+i);}/** * TODO mybatis-plus的修改,有一个共同点,就是: * 当,实体的属性值为null,就不会修改,数据库表中对应的字段 * * 这里我们实体类 User 的 age 声明为 Integer,而不是 int, * 就是因为,Integer 默认值为null, * int 默认值为0 * * 将所有人的年龄修改为22 */@TestpublicvoidtestUpdate1(){Useruser=newUser();user.setAge(22);introws=userMapper.update(user,null);// null:没条件System.out.println("rows:"+rows);}@TestpublicvoidtestSelect(){// 根据 id查询Useruser=userMapper.selectById(1L);System.out.println("user= "+user);// 根据 id集合查询List<Long>ids=newArrayList<>();ids.add(1L);ids.add(2L);ids.add(3L);List<User>users=userMapper.selectBatchIds(ids);System.out.println("users= "+users);}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/16 11:36:29

高中数学资源合集(第二辑)

高中数学《必刷100讲》 文件大小: -内容特色: 100讲精练覆盖高考核心题型适用人群: 高一至高三学生及数学教师核心价值: 刷题思路拆解&#xff0c;高效提分下载链接: https://pan.quark.cn/s/2c41167d98a4 高中数学竞赛培训视频&#xff0b;讲义 文件大小: -内容特色: 高清视…

作者头像 李华
网站建设 2026/8/16 11:37:00

203套房源全数去化,招商林屿缦岛诠释何为“现象级热盘”

在西安楼市&#xff0c;能够被称为“现象级”的项目并不多。2026年2月8日&#xff0c;招商林屿缦岛用一份“首开售罄”的成绩单&#xff0c;为自己赢得了这一称号。203套房源在开盘当日全数去化&#xff0c;这一现象不仅引发了市场热议&#xff0c;更促使我们思考&#xff1a;在…

作者头像 李华
网站建设 2026/8/24 6:50:27

HoRain云--2026最佳Markdown预览方案

&#x1f3ac; HoRain 云小助手&#xff1a;个人主页 ⛺️生活的理想&#xff0c;就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站&#xff0c;性价比超高&#xff0c;大内存超划算&#xff01;忍不住分享一下给大家。点击跳转到网站。 目录 ⛳️ 推荐 …

作者头像 李华
网站建设 2026/8/20 0:11:28

意义与道:临界点的涌现机制

意义与道&#xff1a;临界点的涌现机制 一、意义的可理解性&#xff1a;道的人间显化 1. 道的抽象性与意义的具象性 • 道是宇宙运行的根本规律&#xff0c;是“一阴一阳之谓道”的终极抽象&#xff0c;无形无相&#xff0c;需要极高的悟性与修行才能体认。 • 意义是道在特定…

作者头像 李华
网站建设 2026/8/25 1:53:47

好写作AI:还在“我觉得”?让数据帮你说话,写作从此有据可查!

写专业内容时&#xff0c;你是不是也经常陷入“自我感觉”的漩涡&#xff1f; “市场前景非常广阔…”、“用户反馈普遍积极…”、“这个功能效果显著…” 写的时候信心满满&#xff0c;发出去后被灵魂拷问&#xff1a;“有数据吗&#xff1f;”瞬间哑火。 在“观点通胀”的时…

作者头像 李华