news 2026/5/1 10:35:54

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/5/1 10:14:36

基于昇腾MindSpeed-LLM的大模型训练推理

一、 环境搭建 1. NPU驱动与固件安装 目的:为昇腾(Ascend)NPU提供底层硬件支持。 步骤: 确认服务器型号:dmidcode -t system | grep -i product 下载驱动与固件:根据系统和硬件型号,从昇腾社区获取对应版本。 安装:执行 .run 安装脚本(需赋予执行权限 chmod +x)。 验…

作者头像 李华
网站建设 2026/5/1 7:48:08

收藏!算法工程师薪资全景解析(含大模型岗),小白/程序员必看

对于想入门算法领域、深耕大模型研发的小白和程序员来说&#xff0c;算法工程师的薪资水平一直是大家最关心的话题之一。以下内容是结合公开行业数据、企业招聘信息整理的算法工程师&#xff08;不限计算机、通信领域&#xff0c;重点覆盖大模型相关方向&#xff09;薪资参考&a…

作者头像 李华
网站建设 2026/4/24 9:56:13

Qlib量化投资实战教程:视频精讲+可运行源码+PDF文档|11章系统进阶课,理论直达实操

温馨提示&#xff1a;文末有联系方式为什么选择这套Qlib量化投资系统教程 本教程专为希望深入掌握Qlib框架的量化爱好者与从业者设计&#xff0c;覆盖从环境配置、数据、特征工程、模型训练到回测评估的全链路流程&#xff0c;拒绝碎片化学习。11章体系化课程结构 课程共分11个…

作者头像 李华
网站建设 2026/4/19 16:01:11

ops-cv计算机视觉算子库深度解读

ops-cv计算机视觉算子库深度解读&#xff1a;AIGC视觉任务的加速引擎 本文基于CANN开源社区的ops-cv仓库进行技术解读 CANN组织链接&#xff1a;https://atomgit.com/cann仓库链接&#xff1a;https://atomgit.com/cann/ops-cv 前言 随着AIGC&#xff08;生成式人工智能&am…

作者头像 李华
网站建设 2026/5/1 6:57:29

计算机毕业设计springboot动物园管理系统 基于SpringBoot的野生动物园智慧服务平台设计与实现 SpringBoot框架下的城市动物园数字化运营系统开发

计算机毕业设计springboot动物园管理系统7ij5fe16 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。 随着城市公共服务数字化转型的深入推进&#xff0c;传统动物园面临着信息孤岛…

作者头像 李华