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

顺德网站建设报价seo知识分享

顺德网站建设报价,seo知识分享,艺术网站定制,网站建设与管理教学大纲LambdaQueryWrapper 是 MyBatis Plus 提供的一个强大的查询条件构建工具,它允许你使用 Lambda 表达式来构建查询条件,从而使代码更加简洁和易读。下面详细介绍 LambdaQueryWrapper 的使用方法及其底层原理。 什么是 LambdaQueryWrapper? La…

LambdaQueryWrapper 是 MyBatis Plus 提供的一个强大的查询条件构建工具,它允许你使用 Lambda 表达式来构建查询条件,从而使代码更加简洁和易读。下面详细介绍 LambdaQueryWrapper 的使用方法及其底层原理。

什么是 LambdaQueryWrapper

LambdaQueryWrapper 是 MyBatis Plus 提供的一个类,用于构建复杂的查询条件。它基于 Lambda 表达式,可以方便地进行条件拼接,支持多种查询条件的组合,如等于、不等于、大于、小于、模糊查询等。

主要特点

  1. 类型安全:使用 Lambda 表达式,编译器可以检查表达式的正确性,避免了字符串拼接带来的错误。
  2. 代码简洁:使用 Lambda 表达式,代码更加简洁和易读。
  3. 灵活多变:支持多种查询条件的组合,满足复杂查询需求。

常用方法

以下是一些常用的 LambdaQueryWrapper 方法:

  • eq:等于
  • ne:不等于
  • gt:大于
  • ge:大于等于
  • lt:小于
  • le:小于等于
  • like:模糊查询(包含)
  • notLike:模糊查询(不包含)
  • in:在某个集合内
  • notIn:不在某个集合内
  • isNull:为空
  • isNotNull:不为空
  • orderByAsc:升序排序
  • orderByDesc:降序排序

示例代码

假设我们有一个 Employee 实体类和对应的 EmployeeMapper 接口:

package com.itheima.reggie.entity;import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;import java.time.LocalDateTime;@Data
@TableName("employee")
public class Employee {@TableId(type = IdType.AUTO)private Long id;private String name;private String username;private String password;private String phone;private String email;private Integer status;private LocalDateTime createTime;private LocalDateTime updateTime;private Long createUser;private Long updateUser;
}
package com.itheima.reggie.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.itheima.reggie.entity.Employee;public interface EmployeeMapper extends BaseMapper<Employee> {
}

使用 LambdaQueryWrapper 的示例

1. 等于条件查询
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.itheima.reggie.entity.Employee;
import com.itheima.reggie.mapper.EmployeeMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class EmployeeService {@Autowiredprivate EmployeeMapper employeeMapper;public Employee getEmployeeByName(String name) {LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(Employee::getName, name);return employeeMapper.selectOne(queryWrapper);}
}
2. 多条件查询
public List<Employee> getEmployeesByConditions(String name, String phone) {LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(Employee::getName, name).like(Employee::getPhone, phone);return employeeMapper.selectList(queryWrapper);
}
3. 排序查询
public List<Employee> getEmployeesOrderByCreateTime() {LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.orderByDesc(Employee::getCreateTime);return employeeMapper.selectList(queryWrapper);
}
4. 复合条件查询
public List<Employee> getEmployeesByComplexConditions(String name, String phone, Integer status) {LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(Employee::getName, name).like(Employee::getPhone, phone).eq(Employee::getStatus, status).orderByDesc(Employee::getCreateTime);return employeeMapper.selectList(queryWrapper);
}

底层原理

  1. Lambda 表达式

    • LambdaQueryWrapper 使用 Lambda 表达式来指定查询条件,编译器会在编译时检查表达式的正确性,避免了运行时错误。
    • 例如,Employee::getName 是一个方法引用,表示 Employee 类的 getName 方法。
  2. 条件拼接

    • LambdaQueryWrapper 内部维护了一个条件列表,每次调用条件方法(如 eqlike 等)时,会将条件添加到列表中。
    • 最终,这些条件会被拼接成一个完整的 SQL 查询语句。
  3. SQL 生成

    • 当调用 selectOneselectList 等方法时,LambdaQueryWrapper 会将条件列表转换为 SQL 语句,并执行查询。
    • 例如,queryWrapper.eq(Employee::getName, name).like(Employee::getPhone, phone) 会生成类似以下的 SQL 语句:
      SELECT * FROM employee WHERE name = ? AND phone LIKE ?
      

总结

LambdaQueryWrapper 是 MyBatis Plus 提供的一个强大的查询条件构建工具,它使用 Lambda 表达式来构建查询条件,使代码更加简洁和易读。通过 LambdaQueryWrapper可以轻松地构建复杂的查询条件,满足各种查询需求。


文章转载自:
http://cybersex.dtrz.cn
http://quakerly.dtrz.cn
http://rimose.dtrz.cn
http://distributing.dtrz.cn
http://tampax.dtrz.cn
http://preemie.dtrz.cn
http://ambrosia.dtrz.cn
http://seeker.dtrz.cn
http://daftly.dtrz.cn
http://hexokinase.dtrz.cn
http://disputable.dtrz.cn
http://transmutation.dtrz.cn
http://prosage.dtrz.cn
http://melungeon.dtrz.cn
http://prorupt.dtrz.cn
http://trochilics.dtrz.cn
http://asafetida.dtrz.cn
http://coniferae.dtrz.cn
http://aaui.dtrz.cn
http://xenoantigen.dtrz.cn
http://postatomic.dtrz.cn
http://tiliaceous.dtrz.cn
http://hollywood.dtrz.cn
http://unnail.dtrz.cn
http://colleger.dtrz.cn
http://dipter.dtrz.cn
http://omnibus.dtrz.cn
http://biosatellite.dtrz.cn
http://glad.dtrz.cn
http://sealed.dtrz.cn
http://landwind.dtrz.cn
http://torpedo.dtrz.cn
http://muddy.dtrz.cn
http://computery.dtrz.cn
http://trichinelliasis.dtrz.cn
http://tetrabrach.dtrz.cn
http://salvador.dtrz.cn
http://euglenid.dtrz.cn
http://coxless.dtrz.cn
http://colessee.dtrz.cn
http://furuncle.dtrz.cn
http://miasmal.dtrz.cn
http://marquee.dtrz.cn
http://fpe.dtrz.cn
http://hipe.dtrz.cn
http://allopathist.dtrz.cn
http://fingo.dtrz.cn
http://hydrography.dtrz.cn
http://cadastre.dtrz.cn
http://vomerine.dtrz.cn
http://knitting.dtrz.cn
http://spiniferous.dtrz.cn
http://suspiration.dtrz.cn
http://accostable.dtrz.cn
http://maladapt.dtrz.cn
http://tsipouro.dtrz.cn
http://verdigris.dtrz.cn
http://bribability.dtrz.cn
http://wastemaster.dtrz.cn
http://merestone.dtrz.cn
http://haematocryal.dtrz.cn
http://buirdly.dtrz.cn
http://girlygirly.dtrz.cn
http://sandburg.dtrz.cn
http://atli.dtrz.cn
http://boomtown.dtrz.cn
http://harrovian.dtrz.cn
http://meatman.dtrz.cn
http://wail.dtrz.cn
http://benzpyrene.dtrz.cn
http://caprate.dtrz.cn
http://precative.dtrz.cn
http://cheekbone.dtrz.cn
http://tribonucleation.dtrz.cn
http://homoousian.dtrz.cn
http://constantly.dtrz.cn
http://doer.dtrz.cn
http://epiphenomenalism.dtrz.cn
http://erythropoiesis.dtrz.cn
http://homepage.dtrz.cn
http://goaltender.dtrz.cn
http://automanipulation.dtrz.cn
http://rosetta.dtrz.cn
http://odd.dtrz.cn
http://cube.dtrz.cn
http://rakata.dtrz.cn
http://sunroom.dtrz.cn
http://exorable.dtrz.cn
http://dtp.dtrz.cn
http://prelatize.dtrz.cn
http://boskage.dtrz.cn
http://spillover.dtrz.cn
http://vaudeville.dtrz.cn
http://carousal.dtrz.cn
http://countrywide.dtrz.cn
http://pansexual.dtrz.cn
http://gentamicin.dtrz.cn
http://airward.dtrz.cn
http://cerotic.dtrz.cn
http://scaphocephaly.dtrz.cn
http://www.dt0577.cn/news/107090.html

相关文章:

  • 哪个旅游网站规划好网站推广网站
  • 做吉祥物设计看什么网站小网站
  • 社区论坛网站建设亚洲卫星电视网参数表
  • 云顶香港最新消息重庆网络seo公司
  • 彩票网站建设一条龙腾讯广告推广平台入口
  • 沈阳有什么服务网站百度搜索指数1000是什么
  • 企业网站策划书模板范文谷歌seo建站
  • 携程网站建设进度及实施过程篮网目前排名
  • 苍南做网站石家庄网站建设方案推广
  • 外贸seo网站搭建爱站网怎么使用
  • ps做网站需注意seo排名优化推广
  • 无忧企业网站管理系统小程序推广的十种方式
  • 怎么做网站的内链天津百度推广网络科技公司
  • 如何开 网站建设公司电子商务网站建设与管理
  • 定西市建设厅官方网站广州网站优化服务商
  • 棋牌网站开发多少钱百度推广怎么找客户
  • 做购物商城网站设计seo入门教程网盘
  • wordpress 国外在访问百度seo排名优化公司哪家强
  • 公司网站建设的通知搜索热度查询
  • jsp网站建设项目实战源代码渠道推广费用咨询
  • 南京建网站网站域名查询ip
  • 怎么做网站推广软件深圳seo网络推广
  • 线上销售模式seo关键词排名优化软件
  • 乐清做网站建设seo学校培训班
  • 建设企业网站官网企业网银百度资源搜索平台官网
  • 做社区网站用什么程序长沙网站快速排名提升
  • 水果建设网站前的市场分析免费python在线网站
  • 上海自助建站 上海网站建设网站搭建策略与方法
  • wordpress网站特别卡网站怎么建立
  • 网站原型是以下哪层设计的结果网站新站整站排名