//模型定义
public class DTO {
private int pageNum = 1;
private int pageSize = 10;
//请求方式 1 单次请求 2 递归调用,默认单次调用
private Integer requestWay = 1;
private List<Integer> idList = Lists.newArrayList();
private Integer id;
}
private Integer getPageNum(ActivityGoodsRefreshDTO dto) {
//递归调用
if (dto.getRequestWay() == 2) {
return 1;
}
return dto.getPageNum();
}
//查数据库中goodsName为null的,递归调用。
private void doRefresh(IPage<PO> page, LambdaQueryChainWrapper<PO> wrapper, DTO request) {
List<PO> list = page.getRecords();
if (CollectionUtils.isEmpty(list)) {
return;
}
//请求接口的结果集
Map<Long, Result> map=new HashMap<>();
list.forEach(x -> {
Result dto = map.get(x.getId());
//查不到设置空字符串,避免一直循环
String s = Optional.ofNullable(dto).map(Result::getGoodsName).orElse("");
x.setGoodsName(s);
});
mallCategoryGoodsPOS.forEach(x -> mallCategoryGoodsMapper.updateById(x));
Integer requestWay = request.getRequestWay();
if (requestWay == 2) {
page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(getPageNum(request), getPageSize(request));
wrapper.page(page);
doRefresh(page, wrapper, request);
}
//具体调用
IPage<PO> page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(getPageNum(dto), getPageSize(dto));
wrapper.page(page);
doRefresh(page, wrapper, dto);
}
相关推荐
全排列算法非递归实现和递归实现
全排列在笔试面试中很热门,因为它难度适中,既可以考察递归实现,又能进一步考察非递归的实现,便于区分出考生的水平。所以在百度和迅雷的校园招聘以及程序员和软件设计师的考试中都考到了,因此本文对全排列作下总结帮助大家更好的学习和理解。对本文有任何补充之处,欢迎大家指出。 首先来看看题目是如何要求的(百度迅雷校招笔试题)。 用C++写一个函数, 如 Foo(const char *str), 打印出
【蓝桥杯刷题冲刺辅导】掌握递归·DFS解题套路,这一文足以?
大家好,我是安然无虞。 【前言】 蓝桥杯刷题冲刺辅导专栏正式开启,小伙伴们快上车,下一站:翻身。 一、刷题前和铁汁们唠一唠 1.刷题前须知 大家如果对于基础算法的概念还不是特别理解,可以先回头看看这个专栏,写的比较基础哦。 蓝桥杯常考算法剖析_安然无虞的博客-优快云博客https://blog.youkuaiyun.com/weixin_57544072/category_11418082.html好嘞,那么现在进入主题: 【敲黑板】 刷题量:省赛好成绩 == 200题;国赛好成绩 =..
字节跳动已上岸测试工程师的面试经验
这个时候发面经已经有点晚了,所以现在打算让这篇面经主要面向即将秋招的童鞋,当然现在还在春招的童鞋也可以看哈,我和大家一起聊聊关于测试的二三事。 一、测试工程师的工作是什么? 测试工程师简单点说就是找bug,然后反馈给开发人员,不要小看这个工作。 首先很明显的bug开发人员有时候自己就能找到,测试人员要有比开发人员更加全面的想法才能找到深层次的问题点, 其次,要端正一个态度就是测试人员不是一个电脑小白,相反国外顶级的测试开发工程师同时也是顶级的开发工程师甚至更厉害,所以作为一个测试工程师一定要
算法题到底该怎么刷?高效刷题方法
算法题到底该怎么刷?高效刷题方法
Android Audio - 支持多应用同时录音_Android8.1修改方法
支持多应用同时录音_Android8.1修改方法 源码路径: sdk\frameworks\av\services\audiopolicy\managerdefault\AudioPolicyManager.cpp 需要修改两个位置: audio_io_handle_t AudioPolicyManager::getInputForDevice() 在mpClientInterface->...
Matlab App Designer自学笔记(六):坐标轴控件axis函数绘图方法
作用: 绘制函数显示 显示图像(jpg png tiff) 颜色选项: r(红色) g(绿色) b(蓝色) w(白色) k(黑色) 其他 一、坐标区控件及设置 可以对坐标去进行设计: 二、功能实现及编程 功能:点击“绘图按钮”,能显示曲线。 实现:对按钮设置回调函数 若要多个图像显示在一个坐标系中,需要语句:hold(app.UIAxes,"on"); app.UIAxes是这个坐标轴的名字。 function ButtonP...
Java实现简单的递归操作
在数据结构算法设计中,或者一个方法的具体实现的时候,有一种方法叫做“递归”,这种方法在思想上并不是特别难,但是实现起来还是有一些需要注意的。虽然对于很多递归算法都可以由相应的循环迭代来代替,但是对于一些比较抽象复杂的算法不用递归很难理解与实现。 递归分为直接递归和间接递归,就简单分享一下两个小的直接递归。 对于递归的概念,其实你可以简单的理解为自己定义自己,记得小时候看过一部电视剧《狼毒花》,...
手把手教你用Cesium和RayMarching实现逼真体积云(附完整Shader代码)
本文详细介绍了如何利用Cesium和RayMarching技术实现逼真的体积云效果,包括环境准备、核心逻辑、云层建模和光照增强等关键步骤,并提供了完整的Shader代码。通过噪声函数选型、动态风场模拟和多重散射近似等技术,开发者可以在数字地球可视化项目中创建沉浸式天气效果,显著提升场景的真实感。
leetcode刷题总结之递归
前言: 最近刷完leetcode递归的专题了,无奈本人很菜,关于递归每次都是看大佬的题解,自己也设计不出来递归,今日打算仔细分析递归题,总结以下。 递归: 在数学与计算机科学中,递归(Recursion)是指在函数的定义中使用函数自身的方法。实际上,递归,顾名思义,其包含了两个意思:递和归,这正是递归思想的精华所在。 ...
HTML音乐爱心3D旋转相册完整源码
HTML音乐爱心3D旋转相册完整源码
【四足机器人项目实战】cheetah 3/mini运动控制工程解读(附C++代码)
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、主程序入口1.代码流程2.终端设置信息提示二、用MiniCheetahHardwareBridge类构造一个hw的对象并初初始化1.2.3.4.三、运行硬件桥驱动【MiniCheetahHardwareBridge】1.2.3.4.四、1.2.3.4.总结参考资料 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对cheetah3/m
C++日常刷题
语言定位C++是一种通用、编译型、静态类型的编程语言,起源于 1980 年代,由 Bjarne Stroustrup 在 C 语言基础上设计,支持面向对象(OOP)、泛型编程(GP)、过程式编程等范式。
C# HttpClient完全攻略:从入门到精通只需5步
HttpClient是.NET框架中用于发送HTTP请求和接收HTTP响应的类。它基于异步编程模型,使得网络操作更加高效和灵活。
【数据结构】归并排序 的递归实现与非递归实现
快速排序:前序归并排序:后序。
2.0 电子凸轮 西门子1500电子凸轮使用研究1
本文研究了S7-1500T电子凸轮同步控制技术,通过仿真实验得出以下结论:1)通过比例系数可调整凸轮曲线形状;2)解除同步需调用从轴其他运动指令;3)详细阐述了凸轮同步的5个实施步骤。重点分析了三种同步类型(主值距离同步、动态参数同步和直接同步)的特点及应用场景,并探讨了缩放系数、偏移量等参数对凸轮曲线的影响。同时介绍了凸轮应用模式及常见异常处理方法,为工程应用提供了重要参考。
文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况
主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。
【数据结构】二叉树的翻转递归与非递归实现
二叉树的翻转也是递归的过程,左子树转到右子树,右子树转到左子树。假设有这样的一棵二叉树: 它翻转后应该是这样子的: 代码实现: package 二叉树.翻转; import java.util.LinkedList; class BitNode { //声明一颗树的节点 char data; BitNode LChild; BitNode RChild; } pu
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
java递归实现树形结构数据
java递归实现树形结构数据
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
java递归的简单实现方式
递归在平常的开发过程中使用的不是太多,但是作为一个经典算法,我们必须也要了解一下,递归在使用的过程中一定要有递归的结束条件,否则就会出现java内存溢出,导致整个系统崩溃。下面使用递归计算100以内的数的累计求和让大家更深刻的理解一下递归算法。public class TestDemo { /** * @param args */ public static void main(...
Java递归获取zTree简单结构数据优化
本文主要是对上一次写的Java递归获取zTree两种树形结构数据 中的第二种 简单数据类型 进行优化。 数据结构: var nodes = [ {id:1, pId:0, name: "父节点1"}, {id:11, pId:1, name: "子节点1"}, {id:12, pId:1, name: "子节点2"} ]; // 获取简单JSON数据 public s...
C语言 递归算法及简单递归练习总结
递归 :大师 L. Peter Deutsch 说过:To Iterate is Human, to Recurse, Divine.中文译为:人理解迭代,神理解递归。 简单理解: 递归:你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它,你推开门,发现里面还有一扇门,你继续打开它。若干次之后,你打开面前的门后,发现只有一间屋子,没有门了。然后,你开始原路返回,每走回一间...
java简单递归实现树形
在开发过程中微信小程序树形控件需要按照规定格式返回数据,于是简单编写了一个递归循环 @Override public List<Map<String, Object>> getAppTreeData(Integer consId, String structType) { Map<String,Object> params = new ...
递归在多级数据结构中的简单应用
评论,评论回复评论,其他评论再回复评论。企业部门,部门有子部门,或者公司有子公司。商品分类有一级分类,二级分类。多级数据结构需要解决两个问题,一个是查询所有数据,另外一个是查询部分数据,这两个都需要使用到递归的查询。查询所有数据比较少的数据,就可以查询所有的数据,从数据库查询到所以数据,按照添加时间的先后排序,再使用递归的方式将数据组装成一个树形结构。如果是评论的数据,就需要存储评论的等级,先分页获取一级的评论,再通过一级评论获取下级评论。查询部分数据。
蓝桥杯刷题总结-合集(持续更新)
蓝桥杯刷题总结 待办: 0. 刷题前须知 1. 递归与递推 2. 二分 3. 前缀和 4. 数学 5. 枚举 6. 模拟 7. 排序 8. 双指针 9. BFS 10. 图论 11. 树状数组 12. 线段树 13. 贪心 14. 数论 15. 简单DP 16. 复杂DP 17. 杂题 18. 十一届蓝桥杯真题 19. 十二届蓝桥杯真题 BaseOn : https://www.acwing.com 0、刷提前的须知 1、输入 in.next()和in.ne
Java递归实现树形结构数据
Java递归实现树形结构数据
递归算法简单实现
从搭建数据到加工最后返回效果来展示递归算法
用递归与非递归方法实现汉诺塔问题,C语言实现
用递归与非递归方法实现汉诺塔问题,C语言实现
1万+



被折叠的 条评论
为什么被折叠?



