最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot集成Mybatis-plus-join-boot-start詳解

 更新時間:2025年04月17日 09:53:35   作者:guoyangsheng_  
這篇文章主要介紹了springboot集成Mybatis-plus-join-boot-start方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

導(dǎo)入mybit-plus依賴 與 mybatis-plus-join的依賴

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.5</version>
</dependency>
<dependency>
    <groupId>com.github.yulichang</groupId>
    <artifactId>mybatis-plus-join-boot-starter</artifactId>
    <version>1.4.13</version>
</dependency>

準備如下表模板

CREATE TABLE `sys_user` (
                            `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
                            `dept_id` bigint DEFAULT NULL COMMENT '部門id',
                            `user_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '賬號',
                            `password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '密碼',
                            `nick_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '昵稱',
                            `email` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '用戶郵箱',
                            `phone_number` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '手機號碼',
                            `sex` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '用戶性別(0男 1女)',
                            `avatar` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '頭像地址',
                            `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '帳號狀態(tài)(0正常 1停用)',
                            `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '備注',
                            `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '刪除標志',
                            `version` int DEFAULT NULL COMMENT '樂觀鎖',
                            `create_by` bigint DEFAULT NULL COMMENT '創(chuàng)建人',
                            `create_time` datetime DEFAULT NULL COMMENT '創(chuàng)建時間',
                            `update_by` bigint DEFAULT NULL COMMENT '更新人',
                            `update_time` datetime DEFAULT NULL COMMENT '更新時間',
                            PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='用戶信息';

CREATE TABLE `sys_dept` (
                            `id` bigint NOT NULL AUTO_INCREMENT COMMENT '部門id',
                            `parent_id` bigint DEFAULT '0' COMMENT '父部門id',
                            `dept_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '部門名稱',
                            `order_num` int DEFAULT '0' COMMENT '顯示順序',
                            `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '部門狀態(tài)(0正常 1停用)',
                            `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '備注',
                            `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '刪除標志',
                            `create_by` bigint DEFAULT NULL COMMENT '創(chuàng)建人',
                            `create_time` datetime DEFAULT NULL COMMENT '創(chuàng)建時間',
                            `update_by` bigint DEFAULT NULL COMMENT '更新人',
                            `update_time` datetime DEFAULT NULL COMMENT '更新時間',
                            PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='部門信息';

在mapper中繼承 MPJBaseMapper 

再寫一個mapper繼承MPJBaseMapper

public interface SysUserMapper extends MPJBaseMapper<SysUser> {
}
public interface SysDeptMapper extends MPJBaseMapper<SysDept> {
}

實現(xiàn)類中繼承 MPJBaseServiceImpl,并實現(xiàn)service

@Service
public class SysUserServiceImpl extends MPJBaseServiceImpl<SysUserMapper, SysUser> implements SysUserService {
@Autowired
private SysUserMapper sysUserMapper;

/**
 * 測試:列表多表聯(lián)查
 *
 * @return
 */
@Override
public List<SysUser> sysUserList() {
    //構(gòu)建查詢條件
    MPJLambdaWrapper<SysUser> queryWrapper = new MPJLambdaWrapper<>();
    //聯(lián)查
    queryWrapper.selectAll(SysUser.class)
            .select(SysDept::getDeptName)
            .leftJoin(SysDept.class, SysDept::getId, SysUser::getDeptId);
    //返
    return list(queryWrapper);
}

/**
 * 刪除
 *
 * @param id
 * @return
 */
@Override
public Boolean deleteById(Long id) {
    //創(chuàng)建一個刪除條件
    DeleteJoinWrapper<SysUser> eq = JoinWrappers.delete(SysUser.class)
            //與dept相連
            .leftJoin(SysDept.class, SysDept::getId, SysUser::getDeptId)
            //根據(jù)id刪除
            .eq(SysUser::getId, id);
    return deleteJoin(eq);
}
}

service繼承MPJBaseService

public interface SysUserService extends MPJBaseService<SysUser> {
/**
 * 列表 :多表
 *
 * @return
 */
List<SysUser> sysUserList();

/**
 * 刪除
 *
 * @param id
 * @return
 */
Boolean deleteById(Long id);
}

controller

@RestController
@RequestMapping("/sysUser")
public class SysUserController {
    @Autowired
    private SysUserService sysUserService;

    /**
     * 列表 :多表
     *
     * @return
     */
    @GetMapping("/sysUserList")
    public List<SysUser> sysUserList() {
        return sysUserService.sysUserList();
    }

    /**
     * 刪除
     *
     * @param id
     * @return
     */
    @DeleteMapping("/deleteById/{id}")
    public Boolean deleteById(@PathVariable("id") Long id) {
        return sysUserService.deleteById(id);
    }
}

最后自行測試即可~

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java char數(shù)據(jù)類型原理解析

    java char數(shù)據(jù)類型原理解析

    這篇文章主要介紹了java char數(shù)據(jù)類型原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 詳解IDEA2020新建spring項目和c3p0連接池的創(chuàng)建和使用

    詳解IDEA2020新建spring項目和c3p0連接池的創(chuàng)建和使用

    C3P0是一個開源的JDBC連接池,它實現(xiàn)了數(shù)據(jù)源和JNDI綁定,本文就使用Spring實現(xiàn),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • springboot集成mqtt的實踐開發(fā)

    springboot集成mqtt的實踐開發(fā)

    本篇文章主要介紹了springboot集成mqtt的實踐開發(fā),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • java使用Runtime.getRuntime().exec調(diào)用外部程序

    java使用Runtime.getRuntime().exec調(diào)用外部程序

    Runtime.getRuntime().exec一般用于調(diào)用外部可執(zhí)行程序或系統(tǒng)命令,并重定向外部程序的標準輸入,準輸出和標準錯誤到緩沖池,下面我們來看看Java如何使用它進行調(diào)用外部程序吧
    2025-06-06
  • springboot 多環(huán)境切換的方法

    springboot 多環(huán)境切換的方法

    這篇文章主要介紹了springboot 多環(huán)境切換的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • 淺談spring方法級參數(shù)校驗(@Validated)

    淺談spring方法級參數(shù)校驗(@Validated)

    這篇文章主要介紹了淺談spring方法級參數(shù)校驗(@Validated),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • MyBatis批量插入的幾種方式效率比較

    MyBatis批量插入的幾種方式效率比較

    最近工作中遇到了解析excel,然后批量插入,發(fā)現(xiàn)這個插入時間比較長,所以想要進行一些優(yōu)化,下面這篇文章主要給大家介紹了關(guān)于MyBatis批量插入的幾種方式效率比較的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • SpringBoot應(yīng)用的接口訪問從HTTP改為HTTPS

    SpringBoot應(yīng)用的接口訪問從HTTP改為HTTPS

    本文主要介紹了SpringBoot應(yīng)用的接口訪問從HTTP改為HTTPS,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-03-03
  • java獲取json中的全部鍵值對實例

    java獲取json中的全部鍵值對實例

    下面小編就為大家分享一篇java獲取json中的全部鍵值對實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • SpringBoot與JWT整合方式

    SpringBoot與JWT整合方式

    文章介紹了如何在Spring?Boot項目中整合JWT(JSON?Web?Token),包括JWT的結(jié)構(gòu)、使用方法、測試以及配置,主要內(nèi)容涵蓋了依賴配置、數(shù)據(jù)庫表設(shè)計、實體類、數(shù)據(jù)訪問層、服務(wù)層、JWT工具類、攔截器配置和控制器測試等多個方面
    2024-11-11

最新評論

平山县| 汝南县| 萨迦县| 苏尼特左旗| 屏山县| 泸溪县| 岱山县| 轮台县| 视频| 兴仁县| 孟州市| 文成县| 麻栗坡县| 潮安县| 顺平县| 竹山县| 吉首市| 海淀区| 漳浦县| 于都县| 玉山县| 万安县| 漳平市| 安远县| 平泉县| 浑源县| 洛浦县| 彩票| 贵南县| 任丘市| 海丰县| 云南省| 宜宾县| 永新县| 疏勒县| 咸丰县| 石台县| 昭觉县| 乌拉特后旗| 宁晋县| 深圳市|