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

【Java系列】Mybatis-Plus 使用介紹二

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

【Java系列】Mybatis-Plus 使用介紹二

序言

你只管努力,其他交給時(shí)間,時(shí)間會(huì)證明一切。

MyBatis-Plus 是 MyBatis 的增強(qiáng)工具,它簡化了 MyBatis 的開發(fā),并提供了許多實(shí)用的功能和工具類。下面是 MyBatis-Plus 的使用方法:

1 使用方法

1. 引入依賴

在 Maven 項(xiàng)目中,需要在 pom.xml 文件中添加如下依賴:

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

其中?mybatis-plus-boot-starter?是 MyBatis-Plus 的 Spring Boot Starter。

2. 配置 MyBatis-Plus

在 Spring Boot 項(xiàng)目中,可以通過在 application.properties 或 application.yml 文件中配置 MyBatis-Plus。例如:

mybatis-plus:
  # mapper 文件的路徑,多個(gè)值用逗號(hào)隔開
  mapper-locations: classpath:mapper/*.xml
  # 實(shí)體類所在的包路徑,多個(gè)值用逗號(hào)隔開
  typeAliasesPackage: com.example.demo.entity

3. 編寫實(shí)體類

使用 MyBatis-Plus 時(shí),需要編寫實(shí)體類,并在實(shí)體類上添加注解。例如:

@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("user")
public class User {
    @TableId(type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

在這個(gè)實(shí)體類中,使用了 Lombok 的?@Data?注解自動(dòng)生成 getter 和 setter 方法,@NoArgsConstructor?和?@AllArgsConstructor?注解自動(dòng)生成無參和全參構(gòu)造方法,@TableName?注解指定了實(shí)體類對(duì)應(yīng)的數(shù)據(jù)庫表名,@TableId?注解指定主鍵的生成方式。

4. 編寫 Mapper 接口

使用 MyBatis-Plus 時(shí),可以不用編寫 SQL 語句,只需要編寫 Mapper 接口,并讓該接口繼承 MyBatis-Plus 提供的 BaseMapper 接口。例如:

public interface UserMapper extends BaseMapper<User> {
}

在這個(gè)接口中,繼承了 MyBatis-Plus 提供的 BaseMapper 接口,即可使用 MyBatis-Plus 提供的增刪改查方法。

5. 使用 MyBatis-Plus 提供的增刪改查方法

在編寫 Mapper 接口后,即可在 Service 層中使用 MyBatis-Plus 提供的增刪改查方法。例如:

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;

    @Override
    public List<User> getUserList() {
        return userMapper.selectList(null);
    }

    @Override
    public User getUserById(Long id) {
        return userMapper.selectById(id);
    }

    @Override
    public void saveUser(User user) {
        userMapper.insert(user);
    }

    @Override
    public void updateUser(User user) {
        userMapper.updateById(user);
    }

    @Override
    public void deleteUser(Long id) {
        userMapper.deleteById(id);
    }
}

在這個(gè) Service 實(shí)現(xiàn)類中,使用了 MyBatis-Plus 提供的增刪改查方法,例如?selectList、selectByIdinsert、updateById?和?deleteById?等方法。這些方法的參數(shù)和返回值都非常簡單,使用起來非常方便。

2 構(gòu)造器介紹

1 LambdaQueryWrapper介紹

LambdaQueryWrapper 是?MyBatis-Plus 提供的一個(gè)查詢條件構(gòu)造器,它可以通過 Lambda 表達(dá)式來構(gòu)造查詢條件,使得查詢條件更加簡潔、易讀。下面是 LambdaQueryWrapper 的具體使用方法介紹:

1.1 創(chuàng)建 LambdaQueryWrapper 對(duì)象

在使用 LambdaQueryWrapper 之前,需要先創(chuàng)建 LambdaQueryWrapper 對(duì)象。例如:

LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();

在創(chuàng)建 LambdaQueryWrapper 對(duì)象時(shí),需要指定實(shí)體類的類型,這里以 User 類為例。

1.2?構(gòu)造查詢條件

使用 LambdaQueryWrapper 可以很方便地構(gòu)造查詢條件。例如:

queryWrapper.eq(User::getName, "張三"); // 等于
queryWrapper.ne(User::getAge, 18); // 不等于
queryWrapper.gt(User::getAge, 20); // 大于
queryWrapper.ge(User::getAge, 20); // 大于等于
queryWrapper.lt(User::getAge, 30); // 小于
queryWrapper.le(User::getAge, 30); // 小于等于
queryWrapper.like(User::getName, "張"); // 模糊查詢
queryWrapper.in(User::getAge, Arrays.asList(20, 25, 30)); // in 查詢
queryWrapper.isNull(User::getEmail); // 判斷為 null
queryWrapper.isNotNull(User::getEmail); // 判斷不為 null

在上面的例子中,使用了 Lambda 表達(dá)式來指定查詢條件,例如?User::getName?表示查詢 User 實(shí)體類中的 name 屬性。

1.3?組合查詢條件

使用 LambdaQueryWrapper 可以很方便地組合查詢條件。例如:

queryWrapper.eq(User::getName, "張三").and(qw -> qw.lt(User::getAge, 30).or().isNotNull(User::getEmail));

在上面的例子中,使用了?and?和?or?方法來組合查詢條件,實(shí)現(xiàn)了一個(gè)復(fù)雜的查詢條件。

1.4 執(zhí)行查詢操作

使用構(gòu)造好的 LambdaQueryWrapper 對(duì)象,可以執(zhí)行查詢操作。例如:

List<User> userList = userMapper.selectList(queryWrapper);

在使用 selectList 方法時(shí),將 LambdaQueryWrapper 對(duì)象作為參數(shù)傳入,即可執(zhí)行查詢操作。同理,還可以使用 selectOne、selectCount 等方法執(zhí)行查詢操作。

以上是 LambdaQueryWrapper 的具體使用方法介紹,通過使用 LambdaQueryWrapper,可以很方便地構(gòu)造查詢條件,使得查詢操作更加簡潔、易讀。

2 LambdaUpdateWrapper介紹?

LambdaUpdateWrapper 是 MyBatis-Plus 提供的一個(gè)更新條件構(gòu)造器,它可以通過 Lambda 表達(dá)式來構(gòu)造更新條件,使得更新操作更加簡潔、易讀。

下面是 LambdaUpdateWrapper 的具體使用方法介紹:

1. 創(chuàng)建 LambdaUpdateWrapper 對(duì)象

在使用 LambdaUpdateWrapper 之前,需要先創(chuàng)建 LambdaUpdateWrapper 對(duì)象。例如:

LambdaUpdateWrapper<User> updateWrapper = new LambdaUpdateWrapper<>();

在創(chuàng)建 LambdaUpdateWrapper 對(duì)象時(shí),需要指定實(shí)體類的類型,這里以 User 類為例。

2. 構(gòu)造更新條件

使用 LambdaUpdateWrapper 可以很方便地構(gòu)造更新條件。例如:

updateWrapper.eq(User::getName, "張三").set(User::getAge, 30); // 等于
updateWrapper.ne(User::getAge, 18).set(User::getEmail, "test@test.com"); // 不等于
updateWrapper.gt(User::getAge, 20).set(User::getEmail, "test@test.com"); // 大于
updateWrapper.ge(User::getAge, 20).set(User::getEmail, "test@test.com"); // 大于等于
updateWrapper.lt(User::getAge, 30).set(User::getEmail, "test@test.com"); // 小于
updateWrapper.le(User::getAge, 30).set(User::getEmail, "test@test.com"); // 小于等于

在上面的例子中,使用了 Lambda 表達(dá)式來指定更新條件,例如?User::getName?表示更新 User 實(shí)體類中的 name 屬性。

3. 組合更新條件

使用 LambdaUpdateWrapper 可以很方便地組合更新條件。例如:

updateWrapper.eq(User::getName, "張三").and(qw -> qw.lt(User::getAge, 30).or().isNotNull(User::getEmail)).set(User::getAge, 20);

在上面的例子中,使用了?and?和?or?方法來組合更新條件,實(shí)現(xiàn)了一個(gè)復(fù)雜的更新條件。

4. 執(zhí)行更新操作

使用構(gòu)造好的 LambdaUpdateWrapper 對(duì)象,可以執(zhí)行更新操作。例如:

userMapper.update(null, updateWrapper);

在使用 update 方法時(shí),將 LambdaUpdateWrapper 對(duì)象作為參數(shù)傳入,即可執(zhí)行更新操作。同理,還可以使用 updateById、updateBatchById 等方法執(zhí)行更新操作。

通過使用 LambdaUpdateWrapper,可以很方便地構(gòu)造更新條件,使得更新操作更加簡潔、易讀。文章來源地址http://www.zghlxwxcb.cn/news/detail-472994.html

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

本文來自互聯(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)文章

  • 從零開始學(xué)Spring Boot系列-集成MyBatis-Plus

    從零開始學(xué)Spring Boot系列-集成MyBatis-Plus

    在Spring Boot應(yīng)用開發(fā)中,MyBatis-Plus是一個(gè)強(qiáng)大且易于使用的MyBatis增強(qiáng)工具,它提供了很多實(shí)用的功能,如代碼生成器、條件構(gòu)造器、分頁插件等,極大地簡化了MyBatis的使用和配置。本篇文章將指導(dǎo)大家如何在Spring Boot項(xiàng)目中集成MyBatis-Plus。 首先,確保你已經(jīng)安裝了Java開發(fā)環(huán)

    2024年04月08日
    瀏覽(75)
  • MyBatis-plus中的兩種快捷操作數(shù)據(jù)庫方式:1、mapper調(diào)用 2、ActiveRecord方式(簡稱AR) 二者的使用和區(qū)別介紹

    MyBatis-plus中的兩種快捷操作數(shù)據(jù)庫方式:1、mapper調(diào)用 2、ActiveRecord方式(簡稱AR) 二者的使用和區(qū)別介紹

    ? ? ? ? 在使用MyBatis操作數(shù)據(jù)庫時(shí),需要頻繁的寫mapper層dao接口以及對(duì)應(yīng)的配置文件和SQL語句,當(dāng)功能方法繁雜,業(yè)務(wù)邏輯不復(fù)雜的時(shí)候,我們可以使用MyBatis的升級(jí)版MyBatis-Plus來代替我們寫這些繁瑣的配置文件和簡單的SQL。 (1)書寫或使用MP生成數(shù)據(jù)庫表對(duì)應(yīng)的實(shí)體類。

    2024年02月07日
    瀏覽(174)
  • 【MyBatis-Plus】MyBatis進(jìn)階使用

    【MyBatis-Plus】MyBatis進(jìn)階使用

    目錄 一、MyBatis-Plus簡介 1.1 介紹 1.2 優(yōu)點(diǎn) 1.3 結(jié)構(gòu) 二、MyBatis-Plus基本使用 2.1 配置 2.2 代碼生成 2.3 CRUD接口測(cè)試 三、MyBatis-Plus策略詳解 3.1 主鍵生成策略 3.2 雪花ID生成器 3.3 字段自動(dòng)填充策略 3.4 邏輯刪除 四、MyBatis-Plus插件使用 4.1?樂觀鎖插件 4.1.1?什么是樂觀鎖和悲觀鎖? 4.

    2024年02月04日
    瀏覽(21)
  • Mybatis-plus 使用

    Mybatis-plus 使用

    ? ? ? ? mybatis-plus提供了 ·@TableName·, @TableId, @TableField,?@TableLogic 四種注解,其含義分別為: ?@TableName ? ? ? ? ?@TableName(\\\"SPF_Require_Vehicle\\\")? ? 用于聲明當(dāng)前class所對(duì)應(yīng)數(shù)據(jù)庫中的表,如果class的名字和表的名字完全相同,則不需要添加該注解,如果不一樣,則需要用該注解進(jìn)

    2024年02月07日
    瀏覽(23)
  • mybatis-plus分頁total為0,分頁失效,mybatis-plus多租戶插件使用

    背景:項(xiàng)目使用mybatis分頁插件不生效,以及多租戶使用時(shí)讀取配置異常 多租戶插件使用遇到的問題: 最開始在MyTenantLineHandler中使用 @Value(\\\"${tables}\\\"),服務(wù)啟動(dòng)時(shí)能從配置中心拉取到配置,但在運(yùn)行時(shí)獲取到的值為空,試了很多方法都不生效,后面將配置中心的配置在調(diào)用My

    2024年02月06日
    瀏覽(22)
  • Mybatis-plus的使用

    Mybatis-plus的使用 一、簡介 Mybatis-plus的基于mybatis的,簡化了單表mybatis的操作。 注意:它并沒有提升性能,只是簡化了開發(fā)過程。 二、在springboot中的基本使用 1、導(dǎo)入依賴 2、添加相應(yīng)的數(shù)據(jù)庫配置(application.properties) 3、在Application類上添加dao接口的路徑掃描 4、編寫實(shí)體類

    2024年02月09日
    瀏覽(20)
  • 【熱門框架】Mybatis-Plus入門介紹看這一篇文章就足夠了

    MyBatis-Plus 是在 MyBatis 的基礎(chǔ)上進(jìn)行了封裝,提供了更加便捷的開發(fā)方式,具有簡化開發(fā)、提高效率等優(yōu)點(diǎn)。以下是 MyBatis-Plus 的一些特點(diǎn)和用法: 通用 CRUD 操作:MyBatis-Plus 提供了通用的 CRUD 接口,可以直接調(diào)用,無需再編寫 SQL 語句。例如,可以通過繼承 BaseMapper 接口來實(shí)現(xiàn)

    2024年02月02日
    瀏覽(28)
  • Mybatis-plus框架使用配置

    MyBatis-Plus(簡稱 MP)是一個(gè)基于 MyBatis 的增強(qiáng)工具,它對(duì) Mybatis 的基礎(chǔ)功能進(jìn)行了增強(qiáng),但未做任何改變。使得我們可以可以在 Mybatis 開發(fā)的項(xiàng)目上直接進(jìn)行升級(jí)為 Mybatis-plus,正如它對(duì)自己的定位,它能夠幫助我們進(jìn)一步簡化開發(fā)過程,提高開發(fā)效率。 Mybatis-Plus 其實(shí)可以看

    2024年02月09日
    瀏覽(23)
  • Mybatis-Plus使用方法

    MyBatis-Plus 提供了豐富的增強(qiáng)版的 CRUD 方法,使得開發(fā)者能夠更簡潔、高效地進(jìn)行數(shù)據(jù)庫操作。以下是如何使用 MyBatis-Plus 自帶的增強(qiáng)版 CRUD 方法的基本步驟: 添加依賴 首先,確保你的 Maven 項(xiàng)目中已經(jīng)添加了 MyBatis-Plus 的相關(guān)依賴,包括核心依賴和數(shù)據(jù)庫驅(qū)動(dòng)依賴。 xml復(fù)制代

    2024年04月11日
    瀏覽(19)
  • mybatis-plus與mybatis同時(shí)使用別名問題

    mybatis-plus與mybatis同時(shí)使用別名問題

    在整合mybatis和mybatis-plus的時(shí)候發(fā)現(xiàn)一個(gè)小坑,單獨(dú)使用mybatis,配置別名如下: XML映射文件如下: 單元測(cè)試發(fā)現(xiàn)沒有問題 添加mybatis-plus依賴后,單元測(cè)試報(bào)錯(cuò): 顯示無法解析XML映射文件中的student 解決辦法:要把配置文件里的別名配置改成mybatis-plus的配置,如下: 區(qū)別

    2024年04月13日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包