Maven

主要Maven依赖

        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions></dependency><!--MyBatis-Plus--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.3.2</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.3.2</version></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><!--Swagger 2--><dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version></dependency>

源代码

package cn.edu.zstu.shihua.xihu.controller.log;import cn.edu.zstu.shihua.xihu.model.Log;
import cn.edu.zstu.shihua.xihu.model.User;
import cn.edu.zstu.shihua.xihu.service.ILogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import java.sql.Timestamp;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;/*** <p>*  前端控制器* </p>** @author ShenTuZhiGang* @since 2020-08-02*/
@RestController
@RequestMapping("/log")
@Api(tags = "日志功能接口")
public class LogController {@AutowiredILogService iLogService;@RequestMapping(value = "/list",method = {RequestMethod.GET})public Object pageLog(@ApiParam(name = "page",value = "页数")@RequestParam(defaultValue = "1") Integer page,@ApiParam(name = "size",value = "记录数")@RequestParam(defaultValue = "10") Integer size,@ApiParam(name = "keyword",value = "关键字")@RequestParam(required = false) String keyword,@ApiParam(name = "status",value = "状态")@RequestParam(required = false) String status,@ApiParam(name = "date",value = "时间范围")@RequestParam(required = false) Timestamp[] date,@ApiParam(name = "sort",value = "排序")@RequestParam(required = false) String sort){QueryWrapper<Log> logQueryWrapper = new QueryWrapper<>();if(!StringUtils.isEmpty(keyword)){logQueryWrapper.like("operator",keyword);}if(!StringUtils.isEmpty(status)){logQueryWrapper.eq("status",status);}if(!StringUtils.isEmpty(sort)){try{Pattern pattern = Pattern.compile("([\\+|-][a-zA-Z]+)");Matcher matcher = pattern.matcher(sort);while (matcher.find()) {String str = matcher.group(1);if(str.charAt(0)=='+'){logQueryWrapper.orderByAsc(str.substring(1));}else{logQueryWrapper.orderByDesc(str.substring(1));}}}catch (Exception e){e.printStackTrace();}}if(date!=null && date.length==2){logQueryWrapper.between("time",date[0],date[1]);}return iLogService.page(new Page<>(page,size),logQueryWrapper);}
}

参考项目

Vue后台管理项目: Vue Element Admin

参考文章

正则表达式之Matcher类中group方法

官方文档:Mybatis Plus 分页插件

MyBatis Plus——分页插件

Spring Boot——一种包含分页和排序参数的接收方法DEMO相关推荐

  1. 前端Vue+ElementUI的Pagination分页组件实现分页展示 后端Spring Boot +Mybatis Plus实现分页接口

    前端Vue+ElementUI的Pagination分页组件实现分页展示 & 后端Spring Boot +Mybatis Plus实现分页接口 很久没有更新博客了,主要原因是博主一直在补充自 ...

  2. Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅)

    Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅) 1. 配置环境 在SpringBoot2.0版本以后,原来使用的jedis被替换成为了let ...

  3. spring boot 项目 前台向后台传递时间参数,插入到数据库中时间会少一天

    spring boot 项目 前台向后台传递时间参数,插入到数据库中时间会少一天 分析: 解决办法 分析: 经过测试,时间从前台传到后台数据是一样的,说明是后台向数据库传递过程中出现了问题 解决办法 ...

  4. spring boot 三种类型事物实现说明

    首先需要了解的是spring boot 对事物的分类 1: JDBC 事物 引入依赖包 spring-boot-starter-jdbc jdbc事物是传统方式,直接连接数据库进行操作. 需要增加配置 ...

  5. Spring Boot系列六 Spring boot集成mybatis、分页插件pagehelper

    1. 概述 本文的内容包括如下内容: Spring Boot集成mybatis Spring Boot集成pagehelper分页插件,定义分页的相关类 实现工具类:model转dto,实现数据层和传 ...

  6. spring boot+mybatis+thymeleaf+pagehelper分页插件实现分页功能

    文章目录 前言 正文 业务场景 后端 pom.xml application.yml 实体类video.java和User.java----映射VideoMapper.xml----VideoMapp ...

  7. Spring Boot 五种热部署方式,极速开发就是生产力!

    欢迎关注方志朋的博客,回复"666"获面试宝典 模板热部署 在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的, ...

  8. 阿里原来是这么干的!Spring Boot 五种热部署方式

    作者:若离x 来源:my.oschina.net/ruoli/blog/1590148 1.模板热部署 在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面 ...

  9. 极速开发之Spring Boot五种热部署方式

    在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的,因此我们可以在application.properties中关闭模版引擎的缓存 ...

最新文章

  1. golang beego快速入门示例(单文件hello.go)
  2. oracle 分段函数,清华大学出版社-图书详情-《新高考数学题型全归纳(基础版)》...
  3. 最新!图像去噪综合比较研究
  4. java并发初探ConcurrentHashMap
  5. sv信道模型是什么_Unity Shader|基本光照模型实现中遇到的疑思
  6. 那些年学java遇到的好东西
  7. 用系统工具sxstrace检查缺少的VC运行时组件
  8. 【esp32lvgl】-2.1 # esp32移植lvgl7驱动st7789屏幕(ESP-IDF框架)
  9. python如何用opencv把一个视频按每10秒一小段切割
  10. js截取指定字符串后面的所有字符
  11. 华为云总裁称云计算市场第二场竞争刚开始 | 搜狗纽交所上市,市值近53亿美元
  12. opencv图像形态学运算
  13. 1010: 求圆的周长和面积 ZZULIOJ
  14. 2019年二级造价工程师讲义视频课件免费下载地址
  15. 【雕爷学编程】Arduino动手做(57)---四档矩形波模块
  16. 用51单片机(STC89C52RC、STC12C5A60S2、STC15W104)驱动MzLH03-12864液晶显示模块
  17. CentOS 6.5挂载windows NTFS硬盘
  18. 等腰杨辉三角C语言实现
  19. 静态时序分析-时序违例解决方法
  20. 3款国外比较好用的APK download下载网站推荐

热门文章

  1. 基于.net平台remoting、DB2技术的大型分布式HIS系统架构及开发(项目架构师方向)...
  2. amd一键超频怎么用_头条信息流“一键起量”工具怎么用?经验分享
  3. php下载文件代码详解,php将远超文件下载到本地的示例代码详解
  4. SQL比oracle卡,对比Oracle与SQL Server
  5. 【转】SSM框架搭建流程与解析
  6. android ppt下载地址,Microsoft PowerPoint下载
  7. Linux 访问文件的acl信息,linux文件权限管理与ACL访问控制列表
  8. 【机器学习算法专题(蓄力计划)】十五、机器学习中玄乎的最大熵原理及模型
  9. mysql 查询优化 Explain关键字 高性能mysql笔记
  10. 五十一、结合百度API接口打造 Python小项目