wrapper

MP提供了很多Wrapper方便我們使用
Wrapper : 條件構造抽象類,最頂端父類
AbstractWrapper : 用於查詢條件封裝,生成 sql 的 where 條件
QueryWrapper : Entity 對象封裝操作類,不是用lambda語法
UpdateWrapper : Update 條件封裝,用於Entity對象更新操作
AbstractLambdaWrapper : Lambda 語法使用 Wrapper統一處理解析 lambda 獲取 column。
LambdaQueryWrapper :看名稱也能明白就是用於Lambda語法使用的查詢Wrapper
LambdaUpdateWrapper : Lambda 更新封裝Wrapper
| 查詢方式 | 說明 |
|---|---|
| setSqlSelect | 設置 SELECT 查詢字段 |
| where | WHERE 語句,拼接 + WHERE 條件 |
| and | AND 語句,拼接 + AND 字段=值 |
| andNew | AND 語句,拼接 + AND (字段=值) |
| or | OR 語句,拼接 + OR 字段=值 |
| orNew | OR 語句,拼接 + OR (字段=值) |
| eq | 等於= |
| allEq | 基於 map 內容等於= |
| ne | 不等於<> |
| gt | 大於> |
| ge | 大於等於>= |
| lt | 小於< |
| le | 小於等於<= |
| like | 模糊查詢 LIKE |
| notLike | 模糊查詢 NOT LIKE |
| in | IN 查詢 |
| notIn | NOT IN 查詢 |
| isNull | NULL 值查詢 |
| isNotNull | IS NOT NULL |
| groupBy | 分組 GROUP BY |
| having | HAVING 關鍵詞 |
| orderBy | 排序 ORDER BY |
| orderAsc | ASC 排序 ORDER BY |
| orderDesc | DESC 排序 ORDER BY |
| exists | EXISTS 條件語句 |
| notExists | NOT EXISTS 條件語句 |
| between | BETWEEN 條件語句 |
| notBetween | NOT BETWEEN 條件語句 |
| addFilter | 自由拼接 SQL |
| last | 拼接在最后,例如:last(“LIMIT 1”) |
簡單實例:
@Test
void testSelectWrapper() {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("name", "helen");
List list = userMapper.selectList(queryWrapper);
list.forEach(System.out::println);
}
wrapper的使用方法其實也和JPA中的JPA Spec超級像,使用方法超級簡單哈。
