MybatisPlus经典示例:使用Wrapper查询指定字段并添加字段函数处理、过滤字段查询、自定义sql、单独set某个字段... 您所在的位置:网站首页 typec针脚定义 MybatisPlus经典示例:使用Wrapper查询指定字段并添加字段函数处理、过滤字段查询、自定义sql、单独set某个字段...

MybatisPlus经典示例:使用Wrapper查询指定字段并添加字段函数处理、过滤字段查询、自定义sql、单独set某个字段...

2023-05-27 05:53| 来源: 网络整理| 查看: 265

🍬🍬🍬文章目录

查询

01. 只查询指定字段02. 对查询字段进行函数处理03. 排除指定(过滤)字段查询

其他

自定义where后的所有内容(直接写sql)单独set某个字段

本文基于MybatisPlus3.0.6,首先建议要好好看文档:MyBatis-Plus文档

大前提:CURD的执行接口需要有Wrapper传参,比如list(Wrapper queryWrapper)、page(IPage page、Wrapper queryWrapper)、listObjs(Wrapper queryWrapper)等

以下代码我把LambdaQueryWrapper和QueryWrapper混用的,实际上用哪个都行。用Lambda的好处是降低代码的耦合性(不需要把字段名写死),但是不利于添加函数处理。(懂的不要奇怪,不懂的留言或者进群讨论)

查询 🍬 01. 只查询指定字段

select(字段1,字段2…)

public List getListById(String businessId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); // 商家图片,未删除,可用状态 wrapper.eq(ClientBanner::getBusinessId,businessId) .eq(ClientBanner::isDelState,false) .eq(ClientBanner::isUsable,true) .select(ClientBanner::isDelState,ClientBanner::getBusinessId); // 只查询指定字段 List list = this.list(wrapper); return list; }

控制台打印

: ==> Preparing: SELECT del_state,business_id FROM client_banner WHERE business_id = ? AND del_state = ? AND usable = ? : ==> Parameters: 55456(String), false(Boolean), true(Boolean) : ClientEncyArticles cc = new ClientEncyArticles(); QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("del_state",false) //.setEntity(new ClientEncyArticles()) //如果下边参数不写ClientEncyArticles.class,这里要加setEntity .orderByDesc("create_time") // .select(ClientEncyArticles.class,i->!i.getColumn().equals("del_state")); // 填的是数据库字段名 .select(ClientEncyArticles.class,i->!i.getProperty().equals("delState")); // 填的是实体类字段名,个人认为用这个好一些 IPage page = this.page(new Page(dto.getPage(), dto.getPageSize()), wrapper); return page; }

控制台打印

==> Preparing: SELECT id,author,type,content,cover_picture,create_time FROM client_ency_articles WHERE del_state=? AND del_state = ? ORDER BY create_time DESC LIMIT ?,? ==> Parameters: false(Boolean), false(Boolean), 0(Long), 10(Long)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有