Mybatis-Plus根据时间段去查询数据的实现示例
业务需求:在前端界面选择开始时间、结束时间,后台根据拿到的开始、结束时间去数据库中查询该段时间的数据集返回给前端界面。
1、前端我使用的是elementUI和vue框架,最好是在前端界面进行一个简单的校验规则,对比一下开始时间和结束时间的大小,校验的代码很简单,直接在触发查询按钮的函数前面加入校验即可。代码如下:
if(this.StafPsnClctDetlDFormQuery.startTime >= this.StafPsnClctDetlDFormQuery.endTime){ this.$message.info( '开始时间不能大于结束,请重新输选择' ) }else{ //进行查询操作 )
2、这段代码直接是serviceimpl中的实现类,使用的是分页查询,具体的参数解释如下,其中最重要的就是ge和le方法:
/** * 分页查询信息 * @param pageNumber 页码 * @param pageSize 每页数量 * @param sort 正序/倒序 * @param order 排序字段-属性名 * @param QueryDto 参数 DTO 对象,直接将前端传过来的数据封装成一个对象,之后再到对象里面进行取值 * @return 分页对象 */ @Override public Map<String, Object> queryByDTOPage(int pageNumber, int pageSize, String sort, String order, QueryDto queryDto ) { //调用中台或DB IQuery<QueryDto > page = QueryResult.of(pageNumber, pageSize, sort, order); IPage<QueryDto > da = dvIdxStafPsnClctDetlDDAO.selectPage(page,new QueryWrapper<QueryDto >() .and(ToolUtil.isNotEmpty(QueryDto .getIndexName()),wrapper -> wrapper.like("INDEX_NAME",QueryDto .getIndexName())) .and(ToolUtil.isNotEmpty(QueryDto .getStartTime()),wrapper -> wrapper.ge("START_TIME",QueryDto .getStartTime())) .and(ToolUtil.isNotEmpty(QueryDto .getEndTime()),wrapper -> wrapper.le("END_TIME",QueryDto .getEndTime())) .orderByAsc("START_TIME") ); List<QueryDto > list = QueryDtoAssembler.toQueryDtoList(da.getRecords()); Map<String,Object> rs = new HashMap<String, Object>(); rs.put("pageNumber", pageNumber); rs.put("pageSize", pageSize); rs.put("total", da.getTotal()); rs.put("result", list ); return rs; }
下面是mybatis_plus官网中的解释,不懂得大家可以直接点击链接去官网查看:Mybatis-Plus官网
到此,功能实现。
其实刚开始写这个功能的时候没想到实现起来这样简单,查了网上许多教程都没有思路,之后直接就去找到Mybatis-Plus官网,看了API文档,将数据传进去功能就实现了。
到此这篇关于Mybatis-Plus根据时间段去查询数据的实现示例的文章就介绍到这了,更多相关Mybatis-Plus 时间段查询内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!
相关文章
- 这篇文章主要介绍了Mybatis Plus select 实现只查询部分字段的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-01
- 这篇文章主要介绍了mybatis-plus 表名添加前缀的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-08-26
- 这篇文章主要介绍了mybatis-plus 返回部分字段的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-10-02
- 这篇文章主要介绍了MyBatis-Plus自动填充功能失效导致的原因及解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-04
- 这篇文章主要介绍了mybatis-plus 处理大数据插入太慢的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-18
MyBatisPlus-QueryWrapper多条件查询及修改方式
这篇文章主要介绍了MyBatisPlus-QueryWrapper多条件查询及修改方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2022-06-27- 这篇文章主要介绍了Oracle使用like查询时对下划线的处理方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-16
- 这篇文章主要介绍了java 判断两个时间段是否重叠的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-15
- 这篇文章主要介绍了解决mybatis-plus 查询耗时慢的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-07-04
使用mybatis-plus报错Invalid bound statement (not found)错误
这篇文章主要介绍了使用mybatis-plus报错Invalid bound statement (not found)错误,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-02- 这篇文章主要介绍了mybatis-plus实体类主键策略有3种(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-08-27
- 如果需要在查询语句返回的列中包含一列表示该条记录在整个结果集中的行号, ISO SQL:2003 标准提出的方法是提供 ROW_NUMBER() / RANK() 函数。 Oracle 中可以使用标准方法(8i版本以上),也可以使用非标准的 ROWNUM ; MS SQL...2015-03-15
- 这篇文章主要为大家详细介绍了Node实现搜索框进行模糊查询,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-06-28
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
这篇文章主要介绍了Element-ui 自带的两种远程搜索(模糊查询)用法讲解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-29- 这篇文章主要介绍了mybatis-plus getOne和逻辑删除,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-26
- 这篇文章主要介绍了Mybatis用注解写in查询的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-07-13
mybatis-plus mapper中foreach循环操作代码详解(新增或修改)
这篇文章主要介绍了mybatis-plus mapper中foreach循环操作代码详解(新增或修改),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-11-17PHP+Mysql+jQuery查询和列表框选择操作实例讲解
本文讲解如何通过ajax查询mysql数据,并将返回的数据显示在待选列表中,再通过选择最终将选项加入到已选区,可以用在许多后台管理系统中。本文列表框的操作依赖jquery插件。HTML <form id="sel_form" action="post.php" me...2015-10-23- 这篇文章主要介绍了Mybatis和Mybatis-Plus时间范围查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-06
- MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式 一、SQL模式SQL的模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符(包括零个字符)。在 MySQL...2013-10-04