首页 > 编程语言 >java Page 实现根据字段名排序

java Page 实现根据字段名排序

时间:2023-12-21 15:37:17浏览次数:39  
标签:dto isOrder entity page orderItemList java 排序 Page 字段名

/**
* 排序JSON格式
*/
@ApiModelProperty(value = "排序JSON格式")
private String orderBy;     @GetMapping("/page_manage")
@ApiModelProperty(value = "管理端用户管理分页", notes = "管理端用户管理分页")
public R pageManage(Page<SysUser> page, SysUserDTO dto) {
if(ObjectUtil.isNotNull(dto) && StrUtil.isNotBlank(dto.getOrderBy())){
List<OrderItem> orderItemList = new ArrayList<>();
try {
String decode = URLDecoder.decode(dto.getOrderBy(), "UTF-8");
orderItemList = JSONUtil.toList(decode,OrderItem.class);
if(CollUtil.isNotEmpty(orderItemList)){
orderItemList.forEach(entity->{
String column = entity.getColumn();
if(StrUtil.isNotBlank(column)){
//将驼峰式命名的字符串转换为下划线方式。如果转换前的驼峰式命名的字符串为空,则返回空字符串。
entity.setColumn(StrUtil.toUnderlineCase(column));
}
});

}
page.setOrders(orderItemList);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}

}
return serve.pageManage(page, dto);
}       Boolean isOrder = Boolean.FALSE;
if(ObjectUtil.isNotEmpty(page)){
List<OrderItem> orderItemList = page.getOrders();
if(CollUtil.isNotEmpty(orderItemList)){
isOrder = Boolean.TRUE;
}

}
if(!isOrder){
//排序
queryWrapper.lambda().orderByAsc(xxx::getSort).orderByDesc(xxx::getCreateTime);
}  

标签:dto,isOrder,entity,page,orderItemList,java,排序,Page,字段名
From: https://www.cnblogs.com/wjsqqj/p/17919148.html

相关文章

  • Java文件与byte数组
    读取Java文件到byte数组的三种方式一、FileUtils.javaimportjava.io.BufferedInputStream;importjava.io.ByteArrayOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.RandomA......
  • 《Java架构师的第一性原理》31分布式计算之微服务RPC(Dubbo)
    1 互联网架构,究竟为啥要做服务化互联网架构,究竟为啥要做服务化?2 微服务架构,多“微”才合适?微服务架构,多“微”才合适? 3 离不开的微服务架构,脱不开的RPC细节离不开的微服务架构,脱不开的RPC细节3.1服务化解决的问题1)服务化需要解决的问题:一套序列化、反序列化、网络框......
  • 《Java架构师的第一性原理》30分布式计算之分布式算法
    极客时间 韩健 121.分布式协议与算法实战00 开篇词|想成为分布式高手?那就先把协议和算法烂熟于心吧为什么要单独讲分布式协议和算法呢?在我看来,它其实就是决定分布式系统如何运行的核心规则和关键步骤。如果一个人想真正搞懂分布式技术,开发出一个分布式系统,最先需要掌握的......
  • 《Java架构师的第一性原理》32分布式计算之分布式缓存第3篇LevelDB
    互联网业务,绝大部分场景,会使用缓存服务。但有时候,确实会使用到进程内存缓存/数据库,这个时候,LevelDB就能派上用场了。啥是LevelDB?LevelDB是Google开发的,一个速度非常块的KV存储库(storagelibrary),它支持字符串的key与字符串的value,并且这种映射关系按key排序(orderedmapping)。L......
  • 《Java架构师的第一性原理》32分布式计算之分布式缓存第1篇如何使用Redis搭建玩家排行
    今天我们用Redis搭建一个玩家的排行榜,假设一个服务器存储了10万名玩家的数据,我们想给这个区(这台服务器)上的玩家做个全区的排名,该如何用Redis实现呢?不妨一起来思考下面几个问题:MySQL是如何实现玩家排行榜的?有哪些难题需要解决?如何用Redis模拟10万名玩家数据?Redis里......
  • 《Java架构师的第一性原理》33分布式计算之分布式注册中心、分布式配置中心
    待补充1分布式注册中心2分布式配置中心2.1Apollo2.1.1Apollo是怎样注入到SpringBean的容器里的   99直接读这些牛人的原文apollo不使用MQ如何实现pub/sub场景?13张图彻底搞懂分布式系统服务注册与发现原理为什么@Value可以获取配置中心的值?Spring8:一些......
  • 《Java架构师的第一性原理》32分布式计算之分布式锁(Redis、Zookeeper)
    1 这才是真正的分布式锁技术领域,我觉得了解来龙去脉,了解本质原理,比用什么工具实现更重要:(1)进程多线程如何互斥?(2)一个手机上两个APP访问一个文件如何互斥?(3)分布式环境下多个服务访问一个资源如何互斥?归根结底,是利用一个互斥才能访问的公共资源来实现分布式锁,具体这个公共资源是r......
  • 大学四年自学Java编程,现在拿到28万年薪的offer,还是觉得挺值的
    最近刚拿到美团的Java后端工程师的offer,(底薪、奖金、补贴、年终奖、五险一金)总包加在大概有28万的年薪,实际到手不会有这么多,但是我对于这个待遇还是非常满意的。说来还是非常的感慨,我属于那种从大一到大四一直都泡在图书馆学习的学生,因为家庭条件很一般,然后自己的思想也要比同龄人......
  • 转行自学Java没后悔,我的经历证明,改变永远没有错
    我在北京工作6年,现在年薪42万(仅代表个人收益),目前在搜狐畅游工作,参与过轩辕剑的项目研发,有几个大型项目实战的经历,不过最后这几款项目都失败了。我之所以选择当初学习Java,就一个原因,一个破二本学历,没有好的学校背景,没有深厚的家庭背景,没有好的社会资源,我就只能选择做IT技术,因为这是......
  • Java使用POI库读取或者生成Excel
    maven引入poi库,版本选4.1.2<!--excel工具--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>${poi.version}</version> </dependency>应用,编辑excel有两种......