MybatisPlus之QueryWrapper、LambdaQueryWrapper以及LambdaQueryChainWrapper用法
MybatisPlus3.4.1版本自定义条件构造器
Wrapper之QueryWrapper、LambdaQueryWrapper以及LambdaQueryChainWrapper
1、QueryWrapper
.like("email", "24252") //email对应数据库中列名
1 /** 2 * 条件构造器 查询操作 3 */ 4 @Test 5 void TestQueryWrapperSelect() { 6 //1、条件用法 7 List<User> userList = userMapper.selectList(new QueryWrapper<User>() 8 .like("email", "24252") 9 .between("age", 20, 22) 10 .or() 11 .eq("name", "zcx") 12 ); 13 System.out.println("userList:" + userList); 14 15 //2、排序用法 16 List<User> users = userMapper.selectList(new QueryWrapper<User>() 17 .eq("nick_name", "xx") 18 .orderByAsc("age") //升序 19 // .orderByDesc("age") //降序 20 .last("limit 0,3") //last用法:在sql末尾添加sql语句,有sql注入风险 21 ); 22 System.out.println("users:"+users); 23 24 }
2、LambdaQueryWrapper
queryWrapper.eq(User::getName,"liangd1"); //可以通过Lambda获取数据库列名
1 @Test 2 void TestLambdaQueryWrapper() { 3 //1、查询单条 4 LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>(); 5 queryWrapper.eq(User::getName,"liangd1"); 6 User selectOne = userMapper.selectOne(queryWrapper); 7 System.out.println(selectOne); 8 9 //2、查询list以及统计条数 10 queryWrapper.eq(User::getName, "zcx"); 11 List<User> userList = userMapper.selectList(queryWrapper); 12 System.out.println("userList:" + userList); 13 Integer result = userMapper.selectCount(queryWrapper); 14 System.out.println("result:" + result); 15 }
3、LambdaQueryChainWrapper
1 //链式查询方式 2 User one = new LambdaQueryChainWrapper<>(userMapper) 3 .eq(User::getName, "liangd1") 4 .one();
1 @Test 2 void TestLambdaQueryChainWrapper() { 3 //1、eq查询单条 4 User one = new LambdaQueryChainWrapper<>(userMapper) 5 .eq(User::getName, "liangd1") 6 .one(); 7 System.out.println("UserOne:" + one); 8 9 //2、查询list 10 List<User> users = new LambdaQueryChainWrapper<>(userMapper) 11 .eq(User::getName, "zcx") 12 .list(); 13 System.out.println("UserList:" + users); 14 15 //3、模糊查询 16 List<User> LikeList = new LambdaQueryChainWrapper<>(userMapper) 17 .like(User::getEmail, "test") 18 .list(); 19 System.out.println("LikeUser:" + LikeList); 20 }
分类:
MybatisPlus
标签:
MybatisPlus
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)