当前位置: 首页 > news >正文

画品展现手机网站杭州网站推广大全

画品展现手机网站,杭州网站推广大全,临沂网站建设方案服务,网站建设的3个阶段学习视频#xff1a;【编程不良人】Mybatis-Plus整合SpringBoot实战教程,提高的你开发效率,后端人员必备! 查询方法详解 普通查询 // 根据主键id去查询单个结果的。 Test public void selectById() {User user userMapper.selectById(1739970502337392641L);System.out.print… 学习视频【编程不良人】Mybatis-Plus整合SpringBoot实战教程,提高的你开发效率,后端人员必备! 查询方法详解 普通查询 // 根据主键id去查询单个结果的。 Test public void selectById() {User user userMapper.selectById(1739970502337392641L);System.out.println(user); }//根据多个主键id批量查询结果的 Test public void selectIds() {ListLong list Arrays.asList(1739970502337392641L, 1739983903621038082L, 1739984905459900417L);ListUser userList userMapper.selectBatchIds(list);userList.forEach(System.out::println); } // 根据多个条件查询结果的 Test public void selectByMap() {// map.put(name,小明)// map.put(age,30)// 相当于 where name 小明 and age30MapString, Object columnMap new HashMap();columnMap.put(name, 小刚);columnMap.put(age, 18);ListUser userList userMapper.selectByMap(columnMap);userList.forEach(System.out::println); }条件构造器查询 【重要】 AbstractWrapper 是 MyBatis Plus 中的一个抽象类用于构建 SQL 查询条件。定义了泛型 T、C 和 Children。其中T 表示实体类的类型C 表示查询条件的类型Children 表示子类的类型用于支持链式调用。它提供了一系列方法用于构建 SQL 查询条件包括设置查询字段、设置查询条件、排序等。 常用实现类包括 QueryWrapper 和 UpdateWrapper。这两个类都是 MyBatis Plus 提供的具体实现用于构建查询条件和更新条件。 条件构造器查询示例 SpringBootTest public class SelectTests {Autowiredprivate UserMapper userMapper;/*** 1.名字中包含刘且年龄大于20* name like %刘% and age20*/Testpublic void selectByWrapper() {// 创建queryWrapper的两种方式QueryWrapperUser queryWrapper new QueryWrapper(); // QueryWrapperUser queryWrapper1 Wrappers.Userquery();queryWrapper.like(name, 刘).gt(age, 20);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 2.名字中包含刘且年龄大于等于20且小于30并且email不为空* name like ‘%刘’ and age between 20 and 30 and email is not null*/Testpublic void selectByWrapper2() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.like(name, 刘).between(age, 20, 30).isNull(email);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 3.名字中包含刘或年龄大于等于20,按照年龄降序排序年龄相同按照id升序排列* name like ‘%刘’ and age between 20 and 30 and email is not null*/Testpublic void selectByWrapper3() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.like(name, 刘).or().ge(age,20).orderByDesc(age).orderByAsc(user_id);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 4.创建日期为2023年12月17日并且直属上级为王姓* date_format(create_time,%Y-%m-$d) and manager_id in(select id from user where name like 王%*/Testpublic void selectByWrapper4() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.apply(date_format(create_time,%Y-%m-%d){0}, 2023-12-27) // 使用占位符避免sql注入的风险.inSql(manager_id,select user_id from mp_user where name like 王%);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 5.名字为刘姓且年龄小于30或者邮箱不为空* name like 王% and (age20 or email is not null)*/Testpublic void selectByWrapper5() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.likeRight(name, 刘).and(wq - wq.lt(age, 30).or().isNotNull(email));ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 6.名字为刘姓或者年龄小于30且大于20并且邮箱不为空* name like 刘% or (age30 and age20 and email is not null)*/Testpublic void selectByWrapper6() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.likeRight(name, 刘).or(wq - wq.lt(age, 30).gt(age, 20).isNotNull(email));ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 7.年龄小于30且邮箱不为空并且名字为刘姓* (age30 or email is not null) and name like 刘%*/Testpublic void selectByWrapper7() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.nested(wq - wq.lt(age, 30).or().isNotNull(email)).likeRight(name, 刘);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 8. 年龄为 21 25 33* age in(21,25,33)*/Testpublic void selectByWrapper8() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.in(age, 21, 25, 33);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}/*** 9. 只返回满足条件的其中一条语句即可* limit 1*/Testpublic void selectByWrapper9() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.in(age, 21, 25, 33).last(limit 1); // last() 有sql注入的风险谨慎使用ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);} }select 不列出全部字段 /*** 10.名字中包含刘且年龄小于30需求1加强版*/Testpublic void selectByWrapper() {QueryWrapperUser queryWrapper new QueryWrapper(); // queryWrapper.select(user_id,name,age).like(name, 刘).lt(age, 30); // 包含字段queryWrapper.like(name, 刘).lt(age, 30).select(User.class, info -!info.getColumn().equals(create_time) !info.getColumn().equals(manager_id));// 排除字段ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}condition作用 根据判断决定查询条件是否加到sql语句里面 Testpublic void testCondition() {String name 东;String email ;condition(name, email);}private void condition(String name, String email) {QueryWrapperUser queryWrapper new QueryWrapper(); // if (StringUtils.isNotEmpty(name)) { // queryWrapper.like(name, name); // } // if (StringUtils.isNotEmpty(email)) { // queryWrapper.like(email, email); // }queryWrapper.like(StringUtils.isNotEmpty(name), name, name).like(StringUtils.isNotEmpty(email), email, email);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println);}实体作为条件构造器构造方法的参数 Test public void selectByWrapperEntity() {User user new User();user.setRealName(小刚);user.setAge(18);QueryWrapperUser queryWrapper new QueryWrapper(user);ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println); } 运行结果的sql语句SELECT * FROM mp_user WHERE **name? AND age?** 会把set注入的属性和值映射到where条件中通过SqlCondition 更改查询条件 用法 TableField(condition SqlCondition.LIKE) private String name; TableField(condition %slt;#{%s}) //根据定义的常量自己也可以参考并更改 private Integer age; 运行结果SELECT * FROM mp_user WHERE **name LIKE CONCAT(%,?,%)** AND AND age?allEq **allEq**是一个查询条件配置方法用于构建查询条件。它可以根据传入的条件参数生成一个包含所有等值条件的查询条件对象。 Test public void selectByWrapperAllEq() {QueryWrapperUser queryWrapper new QueryWrapper();MapString, Object params new HashMap();params.put(name, 小明);params.put(age, null);**queryWrapper.allEq(params,false)**; // false代表忽略值为null的字段即不参与where条件ListUser list userMapper.selectList(queryWrapper);list.forEach(System.out::println); }其他条件构造器 **selectMaps 返回** Testpublic void selectByWrapperMaps() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.select(user_id,name).like(name, 刘).lt(age, 30); // ListUser list userMapper.selectList(queryWrapper);// 返回值为实体类的话没设置的值还是会返回只不过值为nullListMapString, Object userList userMapper.selectMaps(queryWrapper);// 只返回限定的字段userList.forEach(System.out::println);}/** 示例* 11.按照直属上级分组查询每组的平均年龄、最大年龄、最小年龄并且至取年龄总和为500的组* select avg(age)avg_age,min(age) min_age,max(age) max_age from user group by manager_id having sum(age)500*/Testpublic void selectByWrapperMaps2() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.select(avg(age) avg_age, min(age) min_age, max(age) max_age).groupBy(manager_id).having(sum(age){0}, 500);ListMapString, Object userList userMapper.selectMaps(queryWrapper);userList.forEach(System.out::println);}lambda条件构造器 Test public void selectLambda() {//创建lambda条件构造器的三种方式LambdaQueryWrapperUser lambda new LambdaQueryWrapper();LambdaQueryWrapperUser lambda2 new QueryWrapperUser().lambda();LambdaQueryWrapperUser lambda3 Wrappers.UserlambdaQuery();lambda3.like(User::getName, 刘).lt(User::getAge, 30); // where name like %雨% and age30ListUser userList userMapper.selectList(lambda3);userList.forEach(System.out::println); } /*** 5.名字为刘姓且年龄小于30或邮箱不为空* name like 刘% and (age30 or email is not null)*/ Test public void selectLambda2() {LambdaQueryWrapperUser lambda Wrappers.UserlambdaQuery();lambda.like(User::getName, 刘).and(wq - wq.lt(User::getAge, 20).or().isNotNull(User::getEmail));ListUser userList userMapper.selectList(lambda);userList.forEach(System.out::println); } // 链式调用多个条件 LambdaQueryChainWrapper Test public void selectLambda3() {ListUser userList new LambdaQueryChainWrapper(userMapper).like(User::getName, 刘).ge(User::getAge, 20).list();userList.forEach(System.out::println); }
http://www.dnsts.com.cn/news/272577.html

相关文章:

  • 物流公司在哪做网站怀柔网站制作公司
  • 百度站长工具官网个人网站上线流程
  • 手机网站底部固定菜单苏州新区做网站
  • 个人网站制作网页打不开视频播放不了是什么问题
  • 网站建设标签超链接怎么做网页
  • 织梦网站首页文字修改营销型网站要素
  • 好的平面设计灵感网站企业管理软件免费版
  • 仙踪林老狼网站欢迎您拍照wordpress内置rest api
  • 网站开发与管理所对应的职位及岗位苏州网站定制公司
  • 海淀网站建设联系方式做暖暖视频网站大全
  • 仿制别人的竞价网站做竞价犯法吗电商数据网站
  • wordpress搭建商城网站p2p金融网站开发方案
  • 一些好用的网站菏泽做网站建设找哪家
  • 太仓网站建设太仓丹阳网站建设案例
  • 怎么样创建个人网站网站底部有很多图标
  • 世界上有一个wordpress站点济南公司建站模板
  • 做网站建设给人销售想自己做一个网站应该怎么弄
  • A00网站建设长春企业网站排名优化
  • 企业网站推广方案上海wordpress免登录发布模块接口
  • 长沙做网站微联讯点不错企业网盘哪个最好用
  • 国外专门用于做网站图片的网站txt地图怎么做
  • 原创作文网站北京建设银行对公网站
  • 淘宝做导航网站有哪些功能吗广东省建筑安全员证查询官网
  • 国外网站参考建盏金盏能不能喝茶
  • 老的网站为什么要改版新网站263企业邮箱后缀是什么
  • 自己做网站制作南阳网站运营招聘信息
  • 义乌市建设银行分行网站app制作网站
  • 肇庆住房城乡建设局网站wordpress关站
  • 专业外包网站建设公司排名网站建设后期出现的问题
  • 建设网站文件夹的名字很多网站开发没有框架如何制作的