Mybatis-plus學習(四)——MybatiPlus的Wrapper的使用
4Wrapper的使用
4.1Wrapper的類圖體系
4.2wapper介紹
-
Wrapper : 條件構造抽象類,最頂端父類,抽象類中提供4個方法西面貼原始碼展示
-
AbstractWrapper : 用於查詢條件封裝,生成 sql 的 where 條件
-
AbstractLambdaWrapper : Lambda 語法使用 Wrapper統一處理解析 lambda 獲取 column。
-
LambdaQueryWrapper :看名稱也能明白就是用於Lambda語法使用的查詢Wrapper
-
LambdaUpdateWrapper : Lambda 更新封裝Wrapper
-
QueryWrapper : Entity 物件封裝操作類,不是用lambda語法
-
UpdateWrapper : Update 條件封裝,用於Entity物件更新操作
QueryWrapper(LambdaQueryWrapper) 和 UpdateWrapper(LambdaUpdateWrapper) 的父類
用於生成 sql 的 where 條件, entity 屬性也用於生成 sql 的 where 條件
注意: entity 生成的 where 條件與 使用各個 api 生成的 where 條件沒有任何關聯行為
4.3常用方法
4.4方法詳情:https://baomidou.com/guide/wrapper.html#abstractwrapper
4.5測試查詢
@Test
public void testGetOneByWrapper(){
QueryWrapper<Account> queryWrapper = new QueryWrapper<>();
Map<String,Object> map = new HashMap<>();
map.put("password","b");
map.put("name",null);
queryWrapper.allEq(map, false);
Account account = accountService.getOne(queryWrapper);
System.out.println(account);
}
4.6測試更新
@Test
public void testUpDateByWrapper(){
Account account = new Account(null,"b","bb");
UpdateWrapper<Account> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("id",19);
accountService.update(account,updateWrapper);
}
4.7測試的原始碼已上傳到GitHub中:https://github.com/LJF2402901363/java_study.git
4.8本部落格已經同步到個人部落格,如有需要請移步:http://moyisuiying.com/index.php/mybatis/409.html
相關文章
- Mybatis-plus學習(五)——MybatiPlus的自定義ID生成器和邏輯刪除詳解測試MyBatis
- MyBatis-Plus學習MyBatis
- Pytest學習(四) - fixture的使用
- 初次學習 Docker Volume 的基本使用 (四)Docker
- MyBatis-Plus日常工作學習MyBatis
- gradle-wrapper的簡單使用GradleAPP
- JavaScript MVC 學習筆記(四)類的使用(下)JavaScriptMVC筆記
- 學習和使用技術的四種層次
- TCP Wrapper 特殊使用TCPAPP
- SpringBoot學習筆記(十七:MyBatis-Plus )Spring Boot筆記MyBatis
- 學習Java的第四周Java
- 系統學習 TypeScript(四)——變數宣告的初步學習TypeScript變數
- Qt學習第四篇(主視窗和ui的使用)QTUI
- Mybatis-plus學習筆記(十一)自動填充功能MyBatis筆記
- MySql 學習筆記四:表的拆分MySql筆記
- AJAX的學習使用
- pagetable的使用學習
- Gradle核心思想(四)看似無用,實則重要的Gradle WrapperGradleAPP
- TypeScript 學習(四)TypeScript
- Docker學習-四Docker
- d3.js 入門學習記錄(四) 尺度scale的使用JS
- 盤點四家使用「深度學習」來研發藥物的公司深度學習
- Scala學習(四)練習
- 把 Maven 提交到專案?Maven Wrapper的使用與好處MavenAPP
- 學習人工智慧的頭四個月人工智慧
- WCF學習(四):資料契約的事件事件
- C#中的深度學習(四):使用Keras.NET識別硬幣C#深度學習Keras
- SQL學習之子查詢,基於Oracle下的HR使用者(四)SQLOracle
- 【Mysql學習】LIMIT的使用MySqlMIT
- 【Mysql 學習】LIMIT 的使用MySqlMIT
- AI工具的學習使用AI
- 函式學習四函式
- goblog學習四Go
- 前端學習(四)--jQuery前端jQuery
- C++學習四C++
- EXP/IMP 學習(四)
- Android UI學習 - Tab的學習和使用AndroidUI
- mybatis-plus 使用心得MyBatis