我是靠谱客的博主 彩色时光,最近开发中收集的这篇文章主要介绍springMvc+mybatisPlus的lambdaQueryWrapper的模糊分页查询,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
<!-- 坐标部分 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
<dependencies>
<!--web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--jpa-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- Mybatis plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.4.0</version>
</dependency>
<!--实体插件,lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
配置文件 yml
server:
port: 9935
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/product1?serverTimezone=GMT%2B8&characterEncoding=utf-8&useSSL=true&useUnicode=true
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver
jpa:
database: mysql
show-sql: true
hibernate:
ddl-auto: update
properties:
hibernate:
#方言
dialect: org.hibernate.dialect.MySQL5Dialect
# 开启日志
logging:
level:
com.pinxixi.goods.mapper: debug
根据自定义的结果集 PageResult
package com.potenza.dong.util;
import java.util.List;
//分页返回类
public class PageResult {
private Long total;
private List rows;
public PageResult() {
}
public PageResult(Long total, List rows) {
this.total = total;
this.rows = rows;
}
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public List getRows() {
return rows;
}
public void setRows(List rows) {
this.rows = rows;
}
}
编写业务接口层
/**
* 用户业务接口层
*/
public interface IUserInfoService {
/**
* 完成文章信息分页
*
* @param page 当前页
* @param size 页数
* @param searchMap 完成按照文章类型和标题的查询功能
* @return List<UserInfo>
*/
public PageResult findDate(Integer page, Integer size, Map searchMap);
}
实现业务接口层
/**
* 用户业务实现层
*/
@Service
public class UserInfoService implements IUserInfoService {
@Autowired
private UserInfoMapper userInfoMapper;
@Override
public PageResult findDate(Integer page, Integer size, Map searchMap) {
QueryWrapper<UserInfo> userInfoQueryWrapper = new QueryWrapper<>();
//判断searchMap是否为空
if (searchMap!=null){
//where articleTypeList=articleTypeList eq
if (searchMap.get("userName")!=null && !"".equals(searchMap.get("userName"))){
//where like("%"userName"%")
userInfoQueryWrapper.lambda().like(UserInfo::getUserName,searchMap.get("userName"));
}
}
Page<UserInfo> userInfoPage = userInfoMapper.selectPage(new Page<>(page, size), userInfoQueryWrapper);
PageResult pageResult = new PageResult(userInfoPage.getTotal(), userInfoPage.getRecords());
return pageResult;
}
}
控制层实现
/**
* 控制层
*/
@RestController
@RequestMapping("/userinfo")
@CrossOrigin
public class UserInfoRestController {
@Autowired
private UserInfoService userInfoService;
/**
* 完成用户信息分页模糊
*
* @param page 当前页
* @param size 页数
* @param searchMap 完成按照用户的用户名查询功能
* @return PageResult<UserInfo>
*/
@PostMapping("/findData/{page}/{size}")
public PageResult findDate(@PathVariable Integer page, @PathVariable Integer size,@RequestBody Map searchMap){
return userInfoService.findDate(page, size, searchMap);
}
}
postman工具测试
最后
以上就是彩色时光为你收集整理的springMvc+mybatisPlus的lambdaQueryWrapper的模糊分页查询的全部内容,希望文章能够帮你解决springMvc+mybatisPlus的lambdaQueryWrapper的模糊分页查询所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复