在 mybatis plus 中进行条件查询,使用小于等于(<=)、大于等于(>=)操作可以通过其提供的条件构造器(wrapper)来实现,以下是一些常见的示例代码,示例基于 mysql 数据库进行演示,假设我们有一个实体类user,对应数据库中的user表,表中有id(数字类型)、age(数字类型)、create_time(日期时间类型)等字段。
1. 引入依赖
首先确保项目中引入了 mybatis plus 相关依赖,在 maven 项目中,依赖配置大致如下:
<dependency>
<groupid>com.baomidou</groupid>
<artifactid>mybatis-plus-boot-starter</artifactid>
<version>最新稳定版本号</version>
</dependency>2. 小于等于示例
以下示例展示如何查询年龄小于等于 30 岁的用户列表,使用 mybatis plus 的 querywrapper 来构建查询条件
import com.baomidou.mybatisplus.core.conditions.query.querywrapper;
import com.example.demo.entity.user;
import com.example.demo.mapper.usermapper;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.service;
import java.util.list;
@service
public class userservice {
@autowired
private usermapper usermapper;
public list<user> findusersbyagelessequal(int age) {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.le("age", age);
return usermapper.selectlist(querywrapper);
}
}在上述代码中:
- 首先创建了
querywrapper<user>对象,用于构建查询user实体相关的条件。 - 然后使用
le方法(代表less than or equal,即小于等于),传入字段名"age"和要比较的值(这里是参数age),构建了age <=给定值的条件。 - 最后通过
usermapper.selectlist(querywrapper)执行查询,返回满足条件的用户列表。
如果要查询创建时间小于等于某个指定时间的用户,比如查询创建时间小于等于 2024-12-10 00:00:00 的用户,代码如下(假设数据库中 create_time 字段存储日期时间值):
import com.baomidou.mybatisplus.core.conditions.query.querywrapper;
import com.example.demo.entity.user;
import com.example.demo.mapper.usermapper;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.service;
import java.time.localdatetime;
import java.util.list;
@service
public class userservice {
@autowired
private usermapper usermapper;
public list<user> findusersbycreatetimelessequal(localdatetime createtime) {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.le("create_time", createtime);
return usermapper.selectlist(querywrapper);
}
}这里将比较的值类型换成了 localdatetime,和日期时间类型的数据库字段进行比较,逻辑和前面年龄比较是类似的。
3. 大于等于示例
以下示例展示如何查询年龄大于等于 25 岁的用户列表,同样使用 querywrapper 构建条件:
import com.baomidou.mybatisplus.core.conditions.query.querywrapper;
import com.example.demo.entity.user;
import com.example.demo.mapper.usermapper;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.service;
import java.util.list;
@service
public class userservice {
@autowired
private usermapper usermapper;
public list<user> findusersbyagegreaterequal(int age) {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.ge("age", age);
return usermapper.selectlist(querywrapper);
}
}在这个代码中,使用 ge 方法(代表 greater than or equal,即大于等于),传入字段名 "age" 和要比较的值(这里是参数 age),构建了 age >= 给定值的条件,通过 usermapper.selectlist(querywrapper) 获取满足条件的用户列表。
类似地,查询创建时间大于等于某个指定时间的用户,例如查询创建时间大于等于 2024-12-01 00:00:00 的用户,代码如下:
import com.baomidou.mybatisplus.core.conditions.query.querywrapper;
import com.example.demo.entity.user;
import com.example.demo.mapper.usermapper;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.service;
import java.time.localdatetime;
import java.util.list;
@service
public class userservice {
@autowired
private usermapper usermapper;
public list<user> findusersbycreatetimegreaterequal(localdatetime createtime) {
querywrapper<user> querywrapper = new querywrapper<>();
querywrapper.ge("create_time", createtime);
return usermapper.selectlist(querywrapper);
}
}以上就是在 mybatis plus 中使用小于等于、大于等于操作进行条件查询的基本示例,你可以根据实际的业务需求和数据库表结构灵活运用这些条件构建方法。更多相关mybatisplus 大于小于内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论