置顶功能 -- 数据表格的某行数据的置顶功能 -- Demo
只有置顶
先给对应的数据库表中添加(一个可以标记置顶的状态即可,例如 已读) type : 置顶状态(0:未置顶; 1:置顶)
首先根据置顶状态
倒叙排序, 这样置顶的数据总是排在前面;
其次根据创建时间
进行倒叙排序.
点击置顶按钮后, 修改状态, 保存. 再次调用查询所有即可.
select * from t_role
ORDER BY type DESC, createTime ASC;
代码参考:
Map<String, SearchFilter> filters = new HashMap<>();
.
.
Specification<实体类> specification = DynamicSpecifications.bySearchFilter(filters.values());
//主要是两个排序字段
Sort sort = new Sort(Sort.Direction.DESC, "ceilingState").and(new Sort(Sort.Direction.DESC, "createTime"));
return repository.findAll(specification, PageUtils.buildPageRequest(vo.getPageNum(), vo.getPageSize(), sort));
置顶,置底,上移,下移
对应的数据库表中添加排序字段index_number, 为了后续两个对象的交换位置;
按index_number排序;
准备交换位置 ,遍历查询出来的列表....交换index_number,也就是交换了位置.
置顶 : 和第一个交换位置.
置底 : 和最后一个交换.
上移 : 和上一个交换.
下移 : 和下一个交换.
无需通知,随意转载
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· PPT革命!DeepSeek+Kimi=N小时工作5分钟完成?
· What?废柴, 还在本地部署DeepSeek吗?Are you kidding?
· DeepSeek企业级部署实战指南:从服务器选型到Dify私有化落地
· 程序员转型AI:行业分析
· 重磅发布!DeepSeek 微调秘籍揭秘,一键解锁升级版全家桶,AI 玩家必备神器!