国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MyBatisPlus入門案例

這篇具有很好參考價(jià)值的文章主要介紹了MyBatisPlus入門案例。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

MyBatisPlus主要是對(duì)MyBatis的簡(jiǎn)化,我們先體會(huì)下它簡(jiǎn)化在哪,然后再學(xué)習(xí)它是什么,以及它幫我們都做哪些事。

1 入門案例

  • MybatisPlus(簡(jiǎn)稱MP)是基于MyBatis框架基礎(chǔ)上開(kāi)發(fā)的增強(qiáng)型工具,旨在簡(jiǎn)化開(kāi)發(fā)、提供效率。

  • 開(kāi)發(fā)方式

    • 基于MyBatis使用MyBatisPlus
    • 基于Spring使用MyBatisPlus
    • 基于SpringBoot使用MyBatisPlus

SpringBoot剛剛我們學(xué)習(xí)完成,它能快速構(gòu)建Spring開(kāi)發(fā)環(huán)境用以整合其他技術(shù),使用起來(lái)是非常簡(jiǎn)單,對(duì)于MP的學(xué)習(xí),我們也基于SpringBoot來(lái)構(gòu)建學(xué)習(xí)。

學(xué)習(xí)之前,我們先來(lái)回顧下,SpringBoot整合Mybatis的開(kāi)發(fā)過(guò)程:

  • 創(chuàng)建SpringBoot工程

    MyBatisPlus入門案例

  • 勾選配置使用的技術(shù),能夠?qū)崿F(xiàn)自動(dòng)添加起步依賴包

    MyBatisPlus入門案例

  • 設(shè)置dataSource相關(guān)屬性(JDBC參數(shù))

    MyBatisPlus入門案例

  • 定義數(shù)據(jù)層接口映射配置

    MyBatisPlus入門案例

我們可以參考著上面的這個(gè)實(shí)現(xiàn)步驟把SpringBoot整合MyBatisPlus來(lái)快速實(shí)現(xiàn)下,具體的實(shí)現(xiàn)步驟為:

步驟1:創(chuàng)建數(shù)據(jù)庫(kù)及表

create database if not exists mybatisplus_db character set utf8;
use mybatisplus_db;
CREATE TABLE user (
    id bigint(20) primary key auto_increment,
    name varchar(32) not null,
    password  varchar(32) not null,
    age int(3) not null ,
    tel varchar(32) not null
);
insert into user values(1,'Tom','tom',3,'18866668888');
insert into user values(2,'Jerry','jerry',4,'16688886666');
insert into user values(3,'Jock','123456',41,'18812345678');
insert into user values(4,'傳智播客','itcast',15,'4006184000');

步驟2:創(chuàng)建SpringBoot工程

MyBatisPlus入門案例

步驟3:勾選配置使用技術(shù)

MyBatisPlus入門案例

說(shuō)明:

  • 由于MP并未被收錄到idea的系統(tǒng)內(nèi)置配置,無(wú)法直接選擇加入,需要手動(dòng)在pom.xml中配置添加

步驟4:pom.xml補(bǔ)全依賴

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.1</version>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.16</version>
</dependency>

說(shuō)明:

  • druid數(shù)據(jù)源可以加也可以不加,SpringBoot有內(nèi)置的數(shù)據(jù)源,可以配置成使用Druid數(shù)據(jù)源

  • 從MP的依賴關(guān)系可以看出,通過(guò)依賴傳遞已經(jīng)將MyBatis與MyBatis整合Spring的jar包導(dǎo)入,我們不需要額外在添加MyBatis的相關(guān)jar包

MyBatisPlus入門案例

步驟5:添加MP的相關(guān)配置信息

resources默認(rèn)生成的是properties配置文件,可以將其替換成yml文件,并在文件中配置數(shù)據(jù)庫(kù)連接的相關(guān)信息:application.yml

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/mybatisplus_db?serverTimezone=UTC 
    username: root
    password: root

說(shuō)明:serverTimezone是用來(lái)設(shè)置時(shí)區(qū),UTC是標(biāo)準(zhǔn)時(shí)區(qū),和咱們的時(shí)間差8小時(shí),所以可以將其修改為Asia/Shanghai

步驟6:根據(jù)數(shù)據(jù)庫(kù)表創(chuàng)建實(shí)體類

public class User {   
    private Long id;
    private String name;
    private String password;
    private Integer age;
    private String tel;
    //setter...getter...toString方法略
}

步驟7:創(chuàng)建Dao接口

@Mapper
public interface UserDao extends BaseMapper<User>{
}

步驟8:編寫(xiě)引導(dǎo)類

@SpringBootApplication
//@MapperScan("com.itheima.dao")
public class Mybatisplus01QuickstartApplication {
    public static void main(String[] args) {
        SpringApplication.run(Mybatisplus01QuickstartApplication.class, args);
    }

}

**說(shuō)明:**Dao接口要想被容器掃描到,有兩種解決方案:

  • 方案一:在Dao接口上添加@Mapper注解,并且確保Dao處在引導(dǎo)類所在包或其子包中
    • 該方案的缺點(diǎn)是需要在每一Dao接口中添加注解
  • 方案二:在引導(dǎo)類上添加@MapperScan注解,其屬性為所要掃描的Dao所在包
    • 該方案的好處是只需要寫(xiě)一次,則指定包下的所有Dao接口都能被掃描到,@Mapper就可以不寫(xiě)。

步驟9:編寫(xiě)測(cè)試類

@SpringBootTest
class MpDemoApplicationTests {

	@Autowired
	private UserDao userDao;
	@Test
	public void testGetAll() {
		List<User> userList = userDao.selectList(null);
		System.out.println(userList);
	}
}

說(shuō)明:

userDao注入的時(shí)候下面有紅線提示的原因是什么?

  • UserDao是一個(gè)接口,不能實(shí)例化對(duì)象

  • 只有在服務(wù)器啟動(dòng)IOC容器初始化后,由框架創(chuàng)建DAO接口的代理對(duì)象來(lái)注入

  • 現(xiàn)在服務(wù)器并未啟動(dòng),所以代理對(duì)象也未創(chuàng)建,IDEA查找不到對(duì)應(yīng)的對(duì)象注入,所以提示報(bào)紅

  • 一旦服務(wù)啟動(dòng),就能注入其代理對(duì)象,所以該錯(cuò)誤提示不影響正常運(yùn)行。

查看運(yùn)行結(jié)果:

MyBatisPlus入門案例

跟之前整合MyBatis相比,你會(huì)發(fā)現(xiàn)我們不需要在DAO接口中編寫(xiě)方法和SQL語(yǔ)句了,只需要繼承BaseMapper接口即可。整體來(lái)說(shuō)簡(jiǎn)化很多。

2 MybatisPlus簡(jiǎn)介

MyBatisPlus(簡(jiǎn)稱MP)是基于MyBatis框架基礎(chǔ)上開(kāi)發(fā)的增強(qiáng)型工具,旨在簡(jiǎn)化開(kāi)發(fā)、提高效率

通過(guò)剛才的案例,相信大家能夠體會(huì)簡(jiǎn)化開(kāi)發(fā)和提高效率這兩個(gè)方面的優(yōu)點(diǎn)。

MyBatisPlus的官網(wǎng)為: https://mp.baomidou.com/ MyBatis-Plus

說(shuō)明:

MyBatisPlus入門案例

官方文檔中有一張很多小伙伴比較熟悉的圖片:

MyBatisPlus入門案例

從這張圖中我們可以看出MP旨在成為MyBatis的最好搭檔,而不是替換MyBatis,所以可以理解為MP是MyBatis的一套增強(qiáng)工具,它是在MyBatis的基礎(chǔ)上進(jìn)行開(kāi)發(fā)的,我們雖然使用MP但是底層依然是MyBatis的東西,也就是說(shuō)我們也可以在MP中寫(xiě)MyBatis的內(nèi)容。

對(duì)于MP的學(xué)習(xí),大家可以參考著官方文檔來(lái)進(jìn)行學(xué)習(xí),里面都有詳細(xì)的代碼案例。

MP的特性:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-453116.html

  • 無(wú)侵入:只做增強(qiáng)不做改變,不會(huì)對(duì)現(xiàn)有工程產(chǎn)生影響
  • 強(qiáng)大的 CRUD 操作:內(nèi)置通用 Mapper,少量配置即可實(shí)現(xiàn)單表CRUD 操作
  • 支持 Lambda:編寫(xiě)查詢條件無(wú)需擔(dān)心字段寫(xiě)錯(cuò)
  • 支持主鍵自動(dòng)生成
  • 內(nèi)置分頁(yè)插件
  • ……

到了這里,關(guān)于MyBatisPlus入門案例的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • MyBatis與MyBatisPlus的區(qū)別

    MyBatis與MyBatisPlus的區(qū)別

    MyBatis-Plus(簡(jiǎn)稱 MP)是一個(gè) MyBatis 的增強(qiáng)工具 ,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高 效率而生。 官網(wǎng)一共有兩個(gè):https://mybatis.plus/ 或 https://mp.baomidou.com/ 。 Mybatis-Plus是由baomidou(苞米豆)組織開(kāi)發(fā)并且開(kāi)源的,截止寫(xiě)博客時(shí)間,該組織共17人。 詳細(xì)步驟

    2024年02月06日
    瀏覽(13)
  • 【mybatis和mybatisplus的區(qū)別】

    MyBatis 和 MyBatis Plus 都是 Java 語(yǔ)言的持久層框架,但它們之間有以下幾個(gè)區(qū)別: MyBatis 是一個(gè)基于 XML 配置文件和 SQL 語(yǔ)句的 ORM 框架,提供了數(shù)據(jù)持久化的基本功能,如 SQL 映射、緩存管理等。而 MyBatis Plus 在 MyBatis 的基礎(chǔ)上進(jìn)行了擴(kuò)展,提供了更加豐富的功能特性,如分頁(yè)插

    2024年02月11日
    瀏覽(17)
  • mybatisplus 使用mybatis中的配置、mapper配置文件

    mybatisplus 使用mybatis中的配置、mapper配置文件

    即在和application.properties同級(jí)目錄下的mybatis目錄中創(chuàng)建mybatis的配置文件mybatis-config.xml 其內(nèi)容如下 方式一的目錄結(jié)構(gòu): 1、在application.properties中再添加一行mapper映射地址 修改mapper映射的配置文件路徑,這次不用在和mapper接口的路徑一一對(duì)應(yīng),只需要在resource/mybatis/mapper/UserMa

    2023年04月08日
    瀏覽(59)
  • 實(shí)戰(zhàn)系列(三)| Mybatis和MybatisPlus區(qū)別,包含詳細(xì)代碼

    實(shí)戰(zhàn)系列(三)| Mybatis和MybatisPlus區(qū)別,包含詳細(xì)代碼

    MyBatis 和 MyBatisPlus 都是基于 MyBatis 的擴(kuò)展庫(kù),用于簡(jiǎn)化 MyBatis 的開(kāi)發(fā)。MyBatisPlus 是在 MyBatis 的基礎(chǔ)上進(jìn)行封裝,提供了一套通用的 CRUD 操作接口,而 MyBatis 是一個(gè)底層的持久層框架。 MyBatis 是一個(gè)持久層框架,它支持定制化 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 避免了幾乎所有

    2024年02月09日
    瀏覽(20)
  • 【Mybatis】深入學(xué)習(xí)MyBatis:概述、主要特性以及配置與映射

    【Mybatis】深入學(xué)習(xí)MyBatis:概述、主要特性以及配置與映射

    ?? 個(gè)人博客: 個(gè)人主頁(yè) ?? 個(gè)人專欄: ? Mybatis? ? ???? 功不唐捐,玉汝于成 目錄 前言 正文 一、概述 MyBatis簡(jiǎn)介 主要特性 1.?動(dòng)態(tài)SQL 2.結(jié)果映射 3 .插件機(jī)制 二、MyBatis配置文件 1.配置文件結(jié)構(gòu) 數(shù)據(jù)庫(kù)連接信息 全局配置 映射器掃描 2.SQL映射文件 SQL語(yǔ)句定義 參數(shù)映射和

    2024年02月04日
    瀏覽(28)
  • Java在線代碼生成工具,支持JPA、Mybatis、MybatisPlus

    Java在線代碼生成工具,支持JPA、Mybatis、MybatisPlus

    【Java代碼生成神器】自動(dòng)化生成Java實(shí)體類、代碼、增刪改查功能!點(diǎn)擊訪問(wèn) 推薦一個(gè)自己每天都在用的Java代碼生成器!這個(gè)網(wǎng)站支持在線生成Java代碼,包含完整的ControllerServiceEntityDao代碼,完整的增刪改查功能! 還可以自定義自己的代碼模板、自由配置高級(jí)選項(xiàng),指定

    2024年02月19日
    瀏覽(27)
  • springboot和vue:七、mybatis/mybatisplus多表查詢+分頁(yè)查詢

    springboot和vue:七、mybatis/mybatisplus多表查詢+分頁(yè)查詢

    mybatisplus實(shí)際上只對(duì)單表查詢做了增強(qiáng)(速度會(huì)更快),從傳統(tǒng)的手寫(xiě)sql語(yǔ)句,自己做映射,變?yōu)榉庋b好的QueryWrapper。 本篇文章的內(nèi)容是有兩張表,分別是用戶表和訂單表,在不直接在數(shù)據(jù)庫(kù)做表連接的情況下,通過(guò)后臺(tái)代碼完成①查詢訂單的同時(shí)查到該訂單所屬的用戶,②

    2024年02月07日
    瀏覽(21)
  • 【Mybatis-Plus】mybatisplus更新時(shí),實(shí)體字段為空,數(shù)據(jù)庫(kù)不更新的解決方案

    項(xiàng)目技術(shù)棧:jdk (1.8) + spring boot (2.1.0) + mybatis-plus (3.5.1) 數(shù)據(jù)庫(kù): MySQL 字段類型:varchar 和 Integer 從前端傳過(guò)來(lái)的數(shù)據(jù)實(shí)體字段, convertType 和 step 設(shè)為null時(shí),使用mybatis-plus 的 updateById方法往數(shù)據(jù)庫(kù)中更新時(shí),這兩個(gè)字段不更新,數(shù)據(jù)不為空可以插入。 mybatis-plus在更新的時(shí)候做

    2024年01月16日
    瀏覽(26)
  • 【MybatisPlus快速入門】—— 進(jìn)階入門

    【MybatisPlus快速入門】—— 進(jìn)階入門

    Mybatis 框架之所以能夠簡(jiǎn)化數(shù)據(jù)庫(kù)操作,是因?yàn)樗麅?nèi)部的映射機(jī)制,通過(guò)自動(dòng)映射,進(jìn)行數(shù)據(jù)的封裝,我們只要符合映射規(guī)則,就可以快速高效的完成 SQL 操作的實(shí)現(xiàn) 既然 MybatisPlus 是基于 Mybatis 的增強(qiáng)工具,所以也具有這樣的映射規(guī)則 1.1.1 自動(dòng)映射 表名和實(shí)體類名映射 - 表

    2023年04月23日
    瀏覽(42)
  • 01 MyBatisPlus快速入門

    01 MyBatisPlus快速入門

    版本 3.5.31 并非另起爐灶 , 而是MyBatis的增強(qiáng) , 使用之前依然要導(dǎo)入MyBatis的依賴 , 且之前MyBatis的所有功能依然可以使用. 局限性是 僅限于單表操作 , 對(duì)于多表仍需要手寫(xiě) 項(xiàng)目結(jié)構(gòu): 先導(dǎo)入依賴,比之前多了一個(gè)mybatis-plus-boot-starter 連接池配置: 實(shí)體類: mapper接口: 采用測(cè)試

    2024年01月20日
    瀏覽(17)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包