(一)springboot中使用mybatisPlus入门,配置

springboot + mybatisPlus 入门实例 入门demo springboot + mybatisPlus 入门实例 入门demo 使用mybatisPlus的优势 集成mybatisplus后,简单的CRUD就不用写了,如果没有特别的sql,就可以不用mapper的xml文件。 mybatisPlus官网: https://mp.baomidou.com/guide 项目搭建前提条件 1、IDEA,并且已安装lombok插件 2、mysql数据库,本实例采用mysql8.0版本,与mysql5.x版本有些不一样,如果使用mysql5.x,只需要修改相应的配置即可 阅读详情

文章有点长分成了三篇

(一)springboot中使用mybatisPlus入门,配置

(二)springboot中使用mybatis-plus,CRUD,主键自增,逻辑删除

(三)sringboot中使用mybatis-plus,条件构造器wapper

一、创建并初始化数据库

1、创建数据库:

mybatis_plus

2、创建 User 表

其对应的数据库 Schema 脚本如下:

DROP TABLE IF EXISTS user;

CREATE TABLE user
(
    id BIGINT(20) NOT NULL COMMENT '主键ID',
    name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
    age INT(11) NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);

其对应的数据库 Data 脚本如下:

DELETE FROM user;

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');

二、初始化工程

使用 Spring Initializr 快速初始化一个 Spring Boot 工程

三、添加依赖

1、引入依赖

spring-boot-starter、spring-boot-starter-test
添加:mybatis-plus-boot-starter、MySQL、lombok、
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写

<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>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

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

    <!--mysql-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>

    <!--lombok用来简化实体类-->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
    </dependency>
</dependencies>

注意:引入 MyBatis-Plus 之后请不要再次引入 MyBatis 以及 MyBatis-Spring,以避免因版本差异导致的问题。

2、idea中安装lombok插件

四、配置

在 application.properties 配置文件中添加 MySQL 数据库的相关配置:
mysql5

#mysql数据库连接
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus
spring.datasource.username=root
spring.datasource.password=123456

mysql8以上(spring boot 2.1)
注意:driver和url的变化

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=123456

注意:
1、这里的 url 使用了 ?serverTimezone=GMT%2B8 后缀,因为Spring Boot 2.1 集成了 8.0版本的jdbc驱动,这个版本的 jdbc 驱动需要添加这个后缀,否则运行测试用例报告如下错误:

java.sql.SQLException: The server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized or represents more

2、这里的 driver-class-name 使用了 com.mysql.cj.jdbc.Driver ,在 jdbc 8 中 建议使用这个驱动,之前的 com.mysql.jdbc.Driver 已经被废弃,否则运行测试用例的时候会有 WARN 信息

五、编写代码

1、主类

在 Spring Boot 启动类中添加 @MapperScan 注解,扫描 Mapper 文件夹
注意:扫描的包名根据实际情况修改

@SpringBootApplication
@MapperScan("com.atguigu.mybatisplus.mapper")
public class MybatisPlusApplication {
    ......
}

2、实体

创建包 entity 编写实体类 User.java(此处使用了 Lombok 简化代码)

@Data
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

查看编译结果
在这里插入图片描述

3、mapper

创建包 mapper 编写Mapper 接口: UserMapper.java

public interface UserMapper extends BaseMapper<User> {
    
}

六、开始使用

添加测试类,进行功能测试:

@RunWith(SpringRunner.class)
@SpringBootTest
public class MybatisPlusApplicationTests {

    @Autowired
    private UserMapper userMapper;

    @Test
    public void testSelectList() {
        System.out.println(("----- selectAll method test ------"));
        //UserMapper 中的 selectList() 方法的参数为 MP 内置的条件封装器 Wrapper
        //所以不填写就是无任何条件
        List<User> users = userMapper.selectList(null);
        users.forEach(System.out::println);
    }
}

注意:

IDEA在 userMapper 处报错,因为找不到注入的对象,因为类是动态创建的,但是程序可以正确的执行。

为了避免报错,可以在 dao 层 的接口上添加 @Repository 注

控制台输出:

User(id=1, name=Jone, age=18, email=test1@baomidou.com)
User(id=2, name=Jack, age=20, email=test2@baomidou.com)
User(id=3, name=Tom, age=28, email=test3@baomidou.com)
User(id=4, name=Sandy, age=21, email=test4@baomidou.com)
User(id=5, name=Billie, age=24, email=test5@baomidou.com)

通过以上几个简单的步骤,我们就实现了 User 表的 CRUD 功能,甚至连 XML 文件都不用编写!

七、配置日志

查看sql输出日志
#mybatis日志

mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

文章有点长分成了三篇

(一)springboot中使用mybatisPlus入门,配置

(二)springboot中使用mybatis-plus,CRUD,主键自增,逻辑删除

(三)sringboot中使用mybatis-plus,条件构造器wapper

SpringBoot系列之集成MybatisPlus操作指南 MyBatisPlus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 阅读详情

相关推荐

MyBatisPlus基础入门笔记

包含 初识MyBatisPlus,标准数据层开发、DQL编程控制、DML编程控制等知识

lonely__snow的博客 1067

02MybatisPlus入门

快速开始参考:http://mp.baomidou.com/guide/quick-start.html 测试项目: mybatis_plus 数据库:mybatis_plus 一、创建并初始化数据库 1、创建数据库: mybatis_plus 2、创建 User 表 其表结构如下: id name age email 1 Jone 18 test1@baomidou.com 2 Jack 20 test2@baomidou.com 3 Tom 28 test3@baomidou.

qq_41458207的博客 326

昇腾AI处理器Ascend C编程:从C/C++基础到高性能算子开发实战

异构计算是提升AI算力效率的核心技术,通过在CPU之外引入专用处理器(如GPU、NPU)协同工作,实现大规模并行计算。其原理在于将计算密集型任务卸载到专用硬件,利用其高并行架构加速处理。技术价值在于突破传统CPU的算力瓶颈,为深度学习训练与推理提供强大动力,广泛应用于模型部署、科学计算和高性能计算场景。本文聚焦昇腾AI处理器的原生编程语言Ascend C,它基于C/C++标准扩展,通过显式内存管理和任务并行模型,充分发挥达芬奇架构中Cube与Vector单元的性能。针对CANN算子开发,文章详解了从环境搭建

weixin_34411563的博客 368

mybatis-plus正确使用姿势:依赖配置、Mapper扫描、多数据源、自动填充、逻辑删除。。。

本文基于 springboot、maven、jdk1.8、mysql 开发,所以开始前我们需要准备好这套环境。

hualinger的博客 1万+

cmw500 lte非信令测试_WiFi信令测试在研发过程中的作用

  1、关于信令测试的故事  2016年的某天,某著名网络产品公司技术负责人致电寻求技术支持:我们的无线路由器遇到了一个困惑:我们某款路由器应用于实际WiFi网络中时,WiFi终端接入非常困难。但是我们使用测试工具检测此路由器,它的所有物理射频指标都非常优异。不知道是为什么?  我来到了测试现场看到:WiFi路由器受控于芯片公司的测试工具,其WiFi发射机指标在非信令测试仪上显示:无论功率、EVM...

weixin_39662263的博客 3925

手把手教你用Nangate 45nm开源工艺库搞定数字电路仿真(附FreePDK资源)

本文详细介绍了如何使用Nangate 45nm开源工艺库进行数字电路仿真,包括环境搭建、关键文件解析、仿真环境配置及低功耗设计等实战内容。特别推荐FreePDK资源,帮助读者快速掌握从理论到实践的全流程操作,适用于学术研究和小规模数字电路设计。

weixin_30352645的博客 490

MyBatis-Plus——Mapper接口中使用自定义的CRUD方法及Mapper.xml映射文件

MyBatis-Plus——Mapper接口中使用自定义的CRUD方法及Mapper.xml映射文件

贝尔摩德苦艾酒 1万+

SMPTE ST 2110 概论(三)

SMPTE ST 2110 概论(三)ST 2110-30:未压缩的PCM音频流ST 2110-31:非PCM音频传输ST 2110-40:辅助数据传输结语 ST 2110-30:未压缩的PCM音频流 鉴于音频系统是广播系统中最复杂,也是最重要的一套系统,我们先来回顾一下广电音频系统的历史。 最老式的音频都是基于模拟信号的,具有有限的动态范围,并且用连续的电压变化来描述音频。再后来就基于数字信号(...

Cidd0422的博客 1万+

【Mybatis】不启动项目直接测试Mapper的方法

在项目开发过程中,有时候一个庞大的SpringBoot 项目的启动时间可能要几分钟的时间,这时候我们如果想测试自己写的某个mybatis的Mapper的方法,要浪费大量时间在等待项目启动上。本文通过一个Main方法和一个Mybatis配置类实现无需启动项目直接测试Mapper功能。

God_WZH的博客 2409

SAP各模块表清单及逻辑关系介绍

分享韩国同行总结的各模块的表清单及逻辑关系,这对ABAP顾问和各模块业务顾问应该非常有用的 物料主数据 SD与MM PS模块 PP模块 QM模块 CO模块 FI模块

weixin_40672823的博客 9599

基于Java+SpringBoot+微信小程序实现奶茶点单系统

再不用担心逢年过节的第一杯奶茶有没有人送了,制作一个奶茶点单系统自己当店主,开怀畅饮,一劳永逸。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 1万+

优化mybatisPlus批量新增,新增mapper层批量新增方法,附带代码生成vm模板。

经发现,mybatisPlus只有Service中存在saveBatch()方法,而Mapper中不存在批量新增的方法,深入了解,发现mybatisPlus的Service中saveBatch()方法也是循环一条一条插入数据库。上述mybatis-plus中源码中只是循环插入实现的批量新增,优化方式有以下几个思路。看到这里,这里提取Mapper.xml的方法,使代码生成的VM的自动生成(VM是mybatisPlus代码生成的模板)这里使用600条数据在模拟mybatisPlus新增和优化之后的新增。

XuDream的博客 5073

第10篇:Agent + 爬虫 = 全自动数据采集专家

在企业级数据采集场景中,传统爬虫的痛点已经到了无法忽视的地步:而Agent + 爬虫的组合,就是这些痛点的终极解决方案。它的核心逻辑是:把爬虫从「人工写死的固定执行脚本」,升级为「能自主分析、自主决策、自主适配、自主修复的智能采集机器人」。我们在生产环境中做过对比测试:传统爬虫开发10个网站的采集脚本需要3人天,而Agent采集机器人只需要3分钟,页面改版后的修复成本从1人天降到了0,采集任务的成功率从62%提升到了95%以上。终端执行以下命令,安装基础依赖,与前9篇环境完全兼容: 二、核心能力拆解:Age

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1576

spring boot:从零开始搭建一个项目 - day 7 springboot devtools热加载+MybatisPlus配置+kisso从入门到放弃

spring boot:从零开始搭建一个项目 - day 7 springboot devtools热加载一、springboot devtools热加载1、引入配置2、idea配置3、运行项目二、MybatisPlus配置三、kisso一、惯例先引包二、生成token 一、springboot devtools热加载 最近感觉开发每次都需要重启真的太麻烦了,还是把这个开起来吧,至于同事说的这个吃内存,吃就吃吧,效率赛高!!! (热加载:实时编译修改代码,虽然我感觉这是在轮询的,有事没事就会自己加载一个=。

叽叽叽叽叽叽叽叽叽叽叽叽叽叽叽叽 677

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

springboot整合mybatisPlus全技巧(1-整合过程)

本文基于 springboot 整合 mybatisPlus 的各种文章早已烂大街的背景下,根据三个方面,来对这一专题做一个全面且实用的总结,基本上只要你吃透这篇文章,开发中关于你能遇到的问题都能迎刃而解了。

java小白翻身 439

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

MyBatisPlus

基于MyBatis框架基础上的增强型框架,简化开发、提升效率开发方式基于MyBatis使用MybatisPlus基于spring使用MyBatisPlus基于SpringBoot使用MyBatisPlus。

qq_31636495的博客 427

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

MybaitsPlus学习笔记(一)简介与入门案例

(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。提供了通用的Mapper和Service,可以在不编写任何SQL语句的前提下,快速的实现单表的增删改查(CURD),批量,逻辑删除,分页等操作。只要把MyBatis-Plus的特性到优秀插件,以及多数据源的配置进行详细讲解。快速开始 | MyBatis-Plus愿景我们的愿景是成为MyBatis最好的搭档,就像魂斗罗中的1P2P,基友搭配,效率翻倍。

a13641376265的博客 1544

MybatisPlus-快速入门

本文详解MyBatisPlus核心功能,包含SpringBoot整合步骤、入门案例实现、@TableName/@TableId/@TableField等常用注解解析。通过案例,演示增删改查开发流程,5分钟完成基础业务搭建,助你快速掌握高效ORM框架,告别繁琐SQL编写!#Java开发 #框架技巧 #编程干货

Crayon26的博客 1397

【SSM框架(下)-SpringBoot、 MyBatisPlus】

SpringBoot 是由Pivotal团队提供的全新框架,其设计目的是用来==简化Spring应用的初始搭建以及开发过程。==大家已经感受了 SpringBoot 程序,回过头看看 SpringBoot 主要作用是什么,就是简化 Spring 的搭建过程和开发过程。配置繁琐依赖设置繁琐SpringBoot 程序优点恰巧就是针对 Spring 的缺点自动配置。这个是用来解决 Spring 程序配置繁琐的问题起步依赖。这个是用来解决 Spring 程序依赖设置繁琐的问题辅助功能(内置服务器,…)

CHENGKENYONG的博客 389

mysql mybatis原数据相加_MyBatisPlus-入门使用笔记

MyBatisPlusMyBatisPlus快速入门官网文档地址:https://baomidou.gitee.io/mybatis-plus-doc/#/install使用第三方组件步骤:1、导入相应的依赖2、研究依赖如何配置3、代码如何编写4、提高扩展技术能力步骤1、创建数据库 User 表idnameageemail1Jone18test1@baomidou.com2Jack20test2@...

weixin_35874254的博客 6292

MyBatisPlus简单入门(SpringBoot)

<h1 id="mybatisplus入门实战(springboot)">MyBatisPlus入门实战(SpringBoot)</h1> <h2 id="一、概述">一、概述</h2> <p>Myb

Hacah的博客 343

MyBatisPlus——1 快速入门

从一个入门案例引出MyBatisPlus,从中可以看出它比传统的MyBatis更方便。然后讲解了MyBatisPlus的常见注解和创建配置。

念头通达 769

mybatisplus修改某个字段_springboot + mybatisPlus 入门实例 入门demo

springboot + mybatisPlus 入门实例 入门demo使用mybatisPlus的优势集成mybatisplus后,简单的CRUD就不用写了,如果没有特别的sql,就可以不用mapper的xml文件。mybatisPlus官网: https://mp.baomidou.com/guide项目搭建前提条件1、IDEA,并且已安装lombok插件 2、mysql数据库,本实例采用my...

weixin_31951319的博客 856

12-Springboot高级用法

1. SpringBoot高级用法 1.1 关于配置文件说明 1.1.1 properties文件说明 1.语法 1. key=value 结构 2.pro中的属性-值默认条件下都是String类型 不需要添加引号 1.1.2 YML文件说明 #语法 # 1. 数据结构 key: value 使用:(空格)链接 # 2. YML文件中有文件父子级结构 采用缩进的方式实现. server: port: 8090 1.2 为属性赋值 1.2.1 业务需求 有时需要动态的获取属

月亮不会睡 1116

MyBatisPlus简介及入门案例

MyBatisPlus只做增强,不做改变,为简化开发、提高效率而生。

2201_76081438的博客 1148
上一篇: 笔记
下一篇: (二)springboot中使用mybatis-plus,CRUD,主键自增,逻辑删除
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值