pom依赖
<!-- 引入mybatisPlus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.2.0</version>
</dependency>
<!-- 引入mysql驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.27</version>
</dependency>
新建一个config包,在里面建一个MybatisPlus配置类 返回一个分页拦截器
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* 分页插件配置
*/
@Configuration
@ConditionalOnClass(value = {PaginationInterceptor.class})
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
return paginationInterceptor;
}
}
代码实现
@Resource
private WnOrderDecorationMapper wnOrderDecorationMapper;
@GetMapping("/sss")
public R sss(Integer ys,Integer pageSize){
Page<Map<String, Object>> page = new Page<>(ys,pageSize); //放入你要查看的页数
QueryWrapper<WnOrderDecoration> wrapper = new QueryWrapper<>();
wrapper.eq("user_id","103");//你的查询条件
Page<Map<String, Object>> mapPage = wnOrderDecorationMapper.selectMapsPage(page, wrapper);
List<Map<String, Object>> records = mapPage.getRecords(); //获取分页后数据
long total = mapPage.getTotal();//获取总数
return R.ok().data("records",mapPage);
}
自动转换大小写工具类
/**
* 自动转换大小写
*/
public class Utils {
public static List<Map<String,Object>> toCamelCase(List<Map<String,Object>> list){
return list.stream().map(item->toCamelCase(item)).collect(Collectors.toList());
}
public static Map<String,Object> toCamelCase(Map<String,Object> params){
Map<String,Object> result = new HashMap<>();
if(params!=null){
params.forEach((key,value)->{
if(value instanceof Date){
value = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(value);
}else if(value instanceof LocalDateTime){
value = ((LocalDateTime)value).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}
result.put(StrUtil.toCamelCase(key),value);
});
}
return result;
}
}
LIMIT分页处理
Integer pageStart = (page - 1) * size;
Integer pageEnd = page * size;