业务需求:在前端界面选择开始时间、结束时间,后台根据拿到的开始、结束时间去数据库中查询该段时间的数据集返回给前端界面。
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 分页对象*/@Overridepublic Map<String, Object> queryByDTOPage(int pageNumber, int pageSize, String sort, String order, QueryDto queryDto ) {//调用中台或DBIQuery<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根据时间段去查询数据相关推荐

  1. mybatis根据id、idList查询数据

    1.根据id查询: mapper.xml中的sql语句如下: <select id="getTestById" resultType="com.abc.Test&q ...

  2. mybatis直接使用自定义sql查询数据

    2019独角兽企业重金招聘Python工程师标准>>> dao层,增加SqlMapper.java和 对应的SQLMapper.xml package rg.contacts.map ...

  3. 2020-09-10 MYSQL按时间段分组查询当天,每小时,15分钟数据分组

    查询的需求比较麻烦,根据spreader_id和返回的状态码来判断事件的回传成功率,但是还需要新增时间段的查询,比如产品要的是每15分钟内数据的回传成功率. 这样的话就需要对时间段进行分组查询,我保存 ...

  4. android用于查询数据的方法,android: SQLite查询数据

    掌握了查询数据的方法之后,你也就将数据库的 CRUD 操 作全部学完了.不过千万不要因此而放松,因为查询数据也是在 CRUD 中最复杂的一种 操作. 我们都知道 SQL 的全称是 Structured ...

  5. MyBatis中使用流式查询避免数据量过大导致OOM

    欢迎关注方志朋的博客,回复"666"获面试宝典 今天mybatis查询数据库中大量的数据,程序抛出: java.lang.OutOfMemoryError: Java heap s ...

  6. mybatis plus按时间段查询_你应该知道的这些Mybatis-Plus使用技巧(小结)

    最近在用 Mybatis-Plus,嗯,真香!!!今天就来说说 Mybatis-Plus 的那些使用技巧 1.条件查询(QueryWrapper) 如果说,我们需要查询的 SQL 语句如下: SELE ...

  7. oracle 查的数据去重复数据,Oracle查询和过滤重复数据

    对数据库某些意外情况,引起的重复数据,如何处理呢? ----------------查重复: select * from satisfaction_survey s where s.as_side = ...

  8. 关于mybatis中的时间段查询

    ** 关于mybatis中的时间段查询 在最近的开发中使用比较频繁的一个点,咱就是说浅浅的记录一下!! 相信大家对于mybatis框架并不陌生,我使用它在开发过程中需要对一个时间段进行查询,前端设置的 ...

  9. Mybatis连3表查询数据resultMap结果映射

    Mybatis连结3表查询数据resultMap结果映射 一.前言 Mybatis实现了sql与java代码的分离,达到了解耦合的目的,配置sql语句时有个resultType="" ...

最新文章

  1. 【怎样写代码】对象克隆 -- 原型模式(一):问题案例
  2. Sql Server系列:触发器
  3. 电大计算机2019作业,【电大题】2019年最新国家开 放大学电大《人文英语2、3、》网络核心课形考网考作业两套汇编附全答案.docx...
  4. objective-c java_程序员转型指南 当Java遇见了Objective-C
  5. Ibatis XML 配置文件注释引起错误及解决方案
  6. Hive hang without response
  7. JAVA从url中分离ip和port
  8. 安卓双进程保活的代码
  9. 银行综合前置系统IFS
  10. alipay.data.bill.balance.query ISV权限不足
  11. 南京最最最牛逼的 IT 公司全在这了
  12. 服务器为什么要域名解析,DNS解析的过程是什么 为什么需要DNS解析域名为IP地址?...
  13. Android跑马灯进度条,table数据跑马灯效果
  14. cad中简单流程图制作_教你怎么制作出高逼格的专业流程图!
  15. QTcpSocket使用过程中的一些问题记录
  16. Android 一个简单手机响铃功能实现
  17. 卡刷刷机包出现 Error 7
  18. 【Rust日报】 2019-01-26
  19. React中input输入框中文输入的问题
  20. ACM-ICPC模板整理

热门文章

  1. python利器app插件_python利器app
  2. 试用分析一国宏观经济内外均衡的过程及其政策搭配
  3. 2016年最经典的高仿系列源码打包下载4.84G
  4. Android悬浮窗的简单实现
  5. 高级密码学复习2-HUST版
  6. 给五子棋加个功能叫悔棋
  7. EST封面: 南方科技大学夏雨团队
  8. 莆系如何投放快手广告?
  9. Ensemble Learning中的Bagging和Boosting
  10. 腾讯多媒体实验室画质增强技术的前沿应用