Mybatis-Plus根據(jù)時間段去查詢數(shù)據(jù)的實現(xiàn)示例
業(yè)務(wù)需求:在前端界面選擇開始時間、結(jié)束時間,后臺根據(jù)拿到的開始、結(jié)束時間去數(shù)據(jù)庫中查詢該段時間的數(shù)據(jù)集返回給前端界面。
1、前端我使用的是elementUI和vue框架,最好是在前端界面進行一個簡單的校驗規(guī)則,對比一下開始時間和結(jié)束時間的大小,校驗的代碼很簡單,直接在觸發(fā)查詢按鈕的函數(shù)前面加入校驗即可。代碼如下:
if(this.StafPsnClctDetlDFormQuery.startTime >= this.StafPsnClctDetlDFormQuery.endTime){ this.$message.info( '開始時間不能大于結(jié)束,請重新輸選擇' ) }else{ //進行查詢操作 )
2、這段代碼直接是serviceimpl中的實現(xiàn)類,使用的是分頁查詢,具體的參數(shù)解釋如下,其中最重要的就是ge和le方法:
/** * 分頁查詢信息 * @param pageNumber 頁碼 * @param pageSize 每頁數(shù)量 * @param sort 正序/倒序 * @param order 排序字段-屬性名 * @param QueryDto 參數(shù) DTO 對象,直接將前端傳過來的數(shù)據(jù)封裝成一個對象,之后再到對象里面進行取值 * @return 分頁對象 */ @Override public Map<String, Object> queryByDTOPage(int pageNumber, int pageSize, String sort, String order, QueryDto queryDto ) { //調(diào)用中臺或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官網(wǎng)中的解釋,不懂得大家可以直接點擊鏈接去官網(wǎng)查看:Mybatis-Plus官網(wǎng)
到此,功能實現(xiàn)。
其實剛開始寫這個功能的時候沒想到實現(xiàn)起來這樣簡單,查了網(wǎng)上許多教程都沒有思路,之后直接就去找到Mybatis-Plus官網(wǎng),看了API文檔,將數(shù)據(jù)傳進去功能就實現(xiàn)了。
到此這篇關(guān)于Mybatis-Plus根據(jù)時間段去查詢數(shù)據(jù)的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)Mybatis-Plus 時間段查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用HttpSessionListener監(jiān)聽器實戰(zhàn)
這篇文章主要介紹了使用HttpSessionListener監(jiān)聽器實戰(zhàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03spring+springmvc+mybatis 開發(fā)JAVA單體應(yīng)用
這篇文章主要介紹了spring+springmvc+mybatis 開發(fā)JAVA單體應(yīng)用的相關(guān)知識,本文通過圖文實例代碼的形式給大家介紹的非常詳細 ,需要的朋友可以參考下2018-11-11Java面試之動態(tài)規(guī)劃與組合數(shù)
這篇文章主要介紹了Java面試之動態(tài)規(guī)劃與組合數(shù)的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09Java8中 LocalDate和java.sql.Date的相互轉(zhuǎn)換操作
這篇文章主要介紹了Java8中 LocalDate和java.sql.Date的相互轉(zhuǎn)換操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Java實戰(zhàn)之實現(xiàn)物流配送系統(tǒng)示例詳解
這篇文章主要介紹了一個java實戰(zhàn)項目:通過java、SSM、JSP、mysql和redis實現(xiàn)一個物流配送系統(tǒng)。文中的示例代碼非常詳細,需要的朋友可以參考一下2021-12-12