湖北做网站教程哪家好简述织梦网站上传及安

diannao/2026/1/20 19:02:35/文章来源:
湖北做网站教程哪家好,简述织梦网站上传及安,怎么做网站推广方案,企业为什么选择网站建设写在前面 #x1f6eb;更多知识总结见Mybatis-Plus专栏 #x1f695;内容总结自尚硅谷杨博超老师的视频 #x1f692;博主对于该知识尚在学习阶段 #x1f684;如果发现存在问题请毫不吝啬的指出 #x1f680;#x1f680;扎哇太枣糕的博客首页#x1f680;#x1f680… 写在前面 更多知识总结见Mybatis-Plus专栏 内容总结自尚硅谷杨博超老师的视频 博主对于该知识尚在学习阶段 如果发现存在问题请毫不吝啬的指出 扎哇太枣糕的博客首页 文章目录1 queryWrapper构造器1.1 组装删改查条件1.2 条件优先级1.3 实现子查询2 updateWrapper构造器2.1 升级修改方法(无需创建对象)2.2 实际开发时的应用3 lambdaXxxWrapper构造器3.1 lambdaQueryWrapper构造器3.2 lambdaUpdateWrapper构造器Wrapper条件构造器   条件构造器wrapper就是用来封装CRUD方法参数条件的一个接口其底层有很多的子类最主要的就是最下面的四个子类 queryWrapper可以用来删改查updateWrapper可以在修改操作时不必创建实体类对象的操作LambdaQueryWrapper和LambdaUpdateWrapper则是在字段参数的调用上进行了升级其他都一样 因为增删改查中的增加记录不需要条件即可完成所以增加方法无需条件构造器wrapper其他的删改查则是有这个条件构造器参数的 1 queryWrapper构造器 1.1 组装删改查条件 组装查询条件   查询条件为名字里包含a字母、年龄在20~30之间、email不为空的所有值且查询到的值按照年龄降序排序若年龄相同则按照id升序排序   查询返回name、age、email字段 Test public void selectListTest() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.select(name, age, email).like(name, a).between(age, 20, 30).isNotNull(email).orderByDesc(age).orderByAsc(id);// SELECT id,name,age,email,is_deleted FROM user WHERE is_deleted0 AND (name LIKE ? AND age BETWEEN ? AND ? AND email IS NOT NULL) ORDER BY age DESC,id ASCListMapString, Object maps mapper.selectMaps(queryWrapper);maps.forEach(System.out::println);System.out.println();ListUser users mapper.selectList(queryWrapper);users.forEach(System.out::println); }⚠  selectMaps和selectList的区别在于selectMaps会将查询到的结果封装在一个元素类型为map集合的list集合中集合中只有查询返回字段所对应的键值对而selectList的返回值也是一个list集合只不过元素类型为对应的泛型包含泛型所有的字段查询返回字段之外的值都为null组装删除条件   删除条件email不为空 Test public void deleteTest() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.isNull(email);// UPDATE user SET is_deleted1 WHERE is_deleted0 AND (email IS NULL)int result mapper.delete(queryWrapper);System.out.println(删除的行数为 result); }组装修改条件   修改条件(年龄大于20并且用户名中包含有a)或邮箱为null Test public void updateTest() {User user new User();user.setAge(20);user.setEmail(temporary.com);QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.gt(age, 20).like(name, a).or().isNull(email);// UPDATE user SET age?, email? WHERE is_deleted0 AND (age ? AND name LIKE ? OR email IS NULL)int result mapper.update(user, queryWrapper);System.out.println(修改的行数为 result); }1.2 条件优先级 使用queryWrapper组装复杂条件的时候存在一个且或条件的优先级问题也就是说在实现多条件拼接的时候且或条件该如何拼接到一起接下来就挑取两个例子来了解一下 // (年龄大于20并且用户名中包含有a) 或 邮箱为null // UPDATE user SET age?, email? WHERE is_deleted0 AND (age ? AND name LIKE ? OR email IS NULL) queryWrapper.gt(age, 20).like(name, a).or().isNull(email);// 用户名中包含有a 且 (年龄大于18或邮箱为null) // UPDATE user SET age?, email? WHERE is_deleted0 AND (name LIKE ? AND (age ? OR email IS NULL)) queryWrapper.like(name, a).and(i - i.gt(age, 18).or().isNull(email));总结一下Lambda表达式中的条件会被当做一个整体优先执行如果不括起来影响结果的话就需要使用Lambda表达式的写法具体的使用要根据业务SQL语句来定 1.3 实现子查询 Test public void sonSelectTest() {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.inSql(id, select id from user where id 100);// SELECT id,name,age,email,is_deleted FROM user WHERE is_deleted0 AND (id IN (select id from user where id 100))ListUser users mapper.selectList(queryWrapper);users.forEach(System.out::println); }2 updateWrapper构造器 2.1 升级修改方法(无需创建对象) 组装修改条件   修改条件用户名中包含有a并且(年龄大于20或邮箱为null) Test public void updateWrapperTest() {UpdateWrapperUser updateWrapper new UpdateWrapper();updateWrapper.like(name, a).and(i - i.gt(age, 20).or().isNull(email));updateWrapper.set(name, 小黑).set(email, dhsjfghr);// UPDATE user SET name?,email? WHERE is_deleted0 AND (name LIKE ? AND (age ? OR email IS NULL))int result mapper.update(null, updateWrapper);System.out.println(修改的行数为 result); }由SQL可见使用updateWrapper和queryWrapper完成的修改功能一样且调用的方法也一样(mapper.update)二者的区别就是updateWrapper不用创建实体类对象直接使用set方法就可以设置修改的字段值 2.2 实际开发时的应用 在实际开发中不管是queryWrapper还是updateWrapper都应该在一定的判断下再去使用条件构造器拼接条件比如说请求传过来的值在不为空的情况下才去对这个字段进行条件设置比如下面的这段代码 Test public void ifTest() {String userName ;Integer ageBegin 20;Integer ageEnd 30;QueryWrapperUser queryWrapper new QueryWrapper();if (StringUtils.isNotBlank(userName)) {queryWrapper.like(name, userName);}if (ageBegin ! null) {queryWrapper.ge(age, ageBegin);}if (ageEnd ! null) {queryWrapper.le(age, ageEnd);}ListUser users mapper.selectList(queryWrapper); }然而上面的代码使用了很多的if判断显得过于冗余于是许多的方法都带有一个condition参数当这个参数为true的时候才会拼接查询条件下面的代码用来代替上面一堆的if判断 QueryWrapperUser queryWrapper new QueryWrapper(); queryWrapper.like(StringUtils.isNotBlank(userName), name, userName).ge(ageBegin ! null, age, ageBegin).le(ageEnd ! null, age, ageEnd);3 lambdaXxxWrapper构造器 lambdaXxxWrapper与xxxWrapper的区别就是他们可以使用Lambda的方式直接调用对象的getter方法来指定字段而不用对照数据库中的字段名这样就乐意避免参数对应不上数据库字段的问题。除了在调用字段时的写法不一样之外其他的写法上二者的方式都一样 3.1 lambdaQueryWrapper构造器 Test public void lambdaQueryWrapperTest() {String userName ;Integer ageBegin 20;Integer ageEnd 30;LambdaQueryWrapperUser lambdaQueryWrapper new LambdaQueryWrapper();lambdaQueryWrapper.like(StringUtils.isNotBlank(userName), User::getName, userName).ge(ageBegin ! null, User::getAge, ageBegin).le(ageEnd ! null, User::getAge, ageEnd);ListUser users mapper.selectList(lambdaQueryWrapper); }3.2 lambdaUpdateWrapper构造器 Test public void lambdaUpdateWrapperTest() {LambdaUpdateWrapperUser lambdaUpdateWrapper new LambdaUpdateWrapper();lambdaUpdateWrapper.like(User::getName, a).and(i - i.gt(User::getAge, 20).or().isNull(User::getEmail));lambdaUpdateWrapper.set(User::getName, 小黑).set(User::getEmail, dhsjfghr);// UPDATE user SET name?,email? WHERE is_deleted0 AND (name LIKE ? AND (age ? OR email IS NULL))int result mapper.update(null, lambdaUpdateWrapper);System.out.println(修改的行数为 result); }这篇博客参加了几何大佬的社区活动 还望大家多多支持几何大佬的社区   ⇩  ⇩  ⇩  ⇩  ⇩  ⇩ CSDN社区 《创作达人》活动只要参与其中并创作文章就有机会获得官方奖品精品日历、新程序员杂志快来参与吧链接直达 https://bbs.csdn.net/topics/605272551

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89879.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

手机版网站开发实例百度站长提交

在企业顺应消费升级的道路中,企业自身不仅要着力强化对于消费者服务意识的提升,并且要树立诚信自律的行业示范带头作用,助力消费环境稳中向好,不断满足人民群众对美好生活的期待。企业的发展需要消费者的认可,酷开科技…

seo关键词优化方法求好用的seo软件

Oracle SQLServer 比较 SQLServer 常见的 数据 库 类型 字符 数据 类型 CHAR CHAR :都是固定长度字符资料但oracle里面最大度为2kb,SQLServer里面最大长度为8kb 变长字符 数据 类型 VARCHAR2 VARCHAR :racle里面最大长度为4kb,SQLServer里面最大长度为8k…

网站域名注册需要什么手续物流网站免费模板

目录 1 I/O 缓冲简介 1.1 什么是I/O 缓冲 1.2 I/O 缓冲的目的 2 文件 I/O 的内核缓冲 3 刷新文件 I/O 的内核缓冲区 3.1 什么是刷新文件 I/O 的内核缓冲区 3.2 控制文件 I/O 内核缓冲的系统调用函数 3.3 示例程序 4 控制文件 I/O 内核缓冲的标志 4.1 O_DSYNC 和 O_SY…

那个网站有兼职做室内设计胡芦娃app软件下载网站

题目描述 思路分析 不是每次1了,而是直接加相同数字出现过的次数,比如有3个1,第二个1就是1,第三个直接2,而不是两次1,而且每次都记录每次的新值出现的次数,这样循环到新数未出现过为止 代码实…

网站开发者密钥昆明 五华 网站建设

数字生活改变世界科技创新引领未来机器人协会开始招新啦~~东莞职业技术学院机器人协会成立于2016年,由东莞职业技术学院电子与电气工程学院支持,由工业机器人技术专业的学生成立。协会位于东莞市东莞职业技术学院实训楼6C4-203。协会成员于2018年获得世界…

做网站需要些什么资料瑞安商城网站建设

iframe是HTML里面嵌套HTML的一种框架1.查看iframe1.Top Window:可直接定位2.iframe#i:说明此元素在iframe上3.iframe显示为空:(id或name为空)4.右边这个看到是空的(2层iframe)以126邮箱为例from selenium import webdriverdriver webdriver.…

如何做能切换语言的网站网站托管服务商

一、阳光值的展示和消耗 1.创建一个文本组件用于显示阳光的数值,然后在脚本中得到这个UI。 在SunManger中得到这个组件的引用 public TextMeshProUGUI sunPointText; 写一个用于更新显示的方法 public void UpdataSunPointText() { sunPointText.tex…

手机微信官方网站首页网站首页效果图怎么做

第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组 文章目录 第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组1、字串排序2、门牌制作3、既约分数4、蛇形填数5、跑步锻炼6、七段码7、成绩统计8、回文日期9、子串分值和10、平面切分 1、字串排序 // 转载博客链接 https://blog.csdn.net/we…

怎么制作网站的链接宏静态网页托管

1.什么是Servlet Servlet是sun公司提供的一门用于开发动态web资源的技术。Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:1、编写一个Java类,实现…

常宁市住房和城乡建设局网站大宗商品交易平台网

开启.NET5时代2020-09-14从NetCore1.1开始学起,然后又从2.0开始讲知识,再到将所有的在线项目升级并长期维护到3.1,转眼已经三年了,一直紧跟着微软的节奏有条不紊的往前走,我相信,只要是从18年末或者19年初跟…

网站所有分类中 点击箭头不出现下拉菜单万网创始人与慧聪网

前言 实际业务开发过程中,业务逻辑可能非常复杂,核心业务 N 个子业务。如果都放到一块儿去做,代码可能会很长,耦合度不断攀升,维护起来也麻烦,甚至头疼。还有一些业务场景不需要在一次请求中同步完成&…

深圳网站制作公司深圳网站制作公司兰州官网seo分析

英语学习者语料库(书面语及口语)中国学习者语料库 CLEC(100万)广外、上海交大大学英语学习者口语语料库 COLSEC (5万) 上海交大香港科技大学学习者语料库 HKUST Learner Corpus 香港科技大学中国英语专业语料库 CEME (148万) 南京大学中国英语学习者口语语料库 SECCL (100万) 南…

织梦做的网站如何修改西宁网站建设开发

Java基础日常总结!!1. Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( )个比特位 在java中一个unicode占2个字节(byte).一个字节等于8比特位(bit).所以每个Unicode码占用 16 个比特…

昆明优化网站排名河北企业自助建站

在实际的软件开发过程中,经常会遇到需要对比两个集合并找出它们之间的差异的情况。为了解决这个问题,我们可以编写一个Java工具类来完成这个任务。本文将介绍如何编写这样一个工具类,并提供详细的代码解释和使用示例。 问题描述 假设我们有两…

90后小姑娘做网站安阳哪里有学做网站的学校

目录 1、简介 2、环境准备 2.1 数据库服务器规划 2.2 安装mysql5.7.20 2.3 设置hostname和ip映射 3、创建复制环境 3.1 服务器host68.cn 3.1.1 配置/etc/my.cnf 3.1.2 服务器host68.cn上建立复制账号: 3.1.3 在mysql服务器host68.cn上安装group replicatio…

白山网站seo页面设计标准规范

<!-- 添加 FastJSON依赖 --> <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.59</version> </dependency>

中国上市网络公司排名wordpress seo 自定义结构

这些天里工作的环境发生了一些微小的变化&#xff0c;可能以后对基层开发的程序员也会有更加具体的影响。上周参加 Open Party 时&#xff0c;重点听了《那些失败的项目们》&#xff0c;分析了一个项目的提出、实施&#xff0c;直到最后失败的过程。我也在想一个技术团队究竟应…

十大企业网站排行榜网站安全建设步骤

评价工科实力一个非常明显的指标就是学科实力&#xff0c;2017年公布的第四次学科评估结果就是最好的参考。下面就以学科评估排名全国5%的学科数作为评比基准&#xff0c;对国内主要高校的工科实力进行一个排名&#xff0c;结果如下&#xff1a;前3甲&#xff1a;清华大学、浙江…

mysql 网站 数据库网站开发公司网站官网

不可变性&#xff1a; String类是不可变的&#xff0c;即一旦创建了String对象&#xff0c;就不能修改它的值。每次对String对象的操作都会创建一个新的String对象&#xff0c;导致内存开销较大。 StringBuffer和StringBuilder类是可变的&#xff0c;它们允许修改已有的字符串…

惠州专业做网站科技公司排名

http请求分为两大类&#xff1a;普通http请求&#xff08;如百度请求&#xff09;和ajax请求&#xff08;跨域是出现在ajax请求&#xff09; 同源策略&#xff1a;在浏览器发起ajax请求时&#xff0c;当前的网址和被请求的网址协议、域名、端口号必须完全一致&#xff0c;目的是…