java 获取父节点_Java根据子节点递归父节点
先上数据库结构图和树形图;
项目中的一个需求是获取一个商品所属的二级分类名称。
思路分析,首先,我们是可以拿到当前商品所属的子分类的,比如说我买的是一个iPhone SE,对应的分类名称是iPhone低端版,然后反向递归去查询父分类。它的父分类是iPhone,同理,iPhone的父分类是手机,所以最后面我们拿到的对象应该是手机这个二级分类。
首先我们获写一个获取全部分类的方法方便我们后面使用:private List allCategory = categoryMapper.findAllCategory();
public TblCategory getParentCategoryObject(TblCategory category) {
if (category.getParentId() == 1) {
return category;
}
TblCategory tblCategory = allCategory.stream().filter(
x -> Objects.equals(x.getCategoryId(), category.getParentId())
).findFirst().get();
return getParentCategoryObject(tblCategory);
}
category.getParentId() == 1 说明我们找到了二级分类,所以这里直接返回,跳递归了,否则就一直去查找,直到找到为止。
java 获取父节点_Java根据子节点递归父节点相关推荐
- java获取页面标签_java获取网页源代码后,提取标签内容……
java获取网页源代码后,提取标签内容-- 关注:245 答案:2 mip版 解决时间 2021-02-01 09:11 提问者咏bù琂败 2021-01-31 13:49 import java ...
- java 获取视频信息_Java获取视频参数信息
Java获取视频参数信息 资料收集 经过搜索常用的处理视频的方式有两种:xuggler 和 ffmpeg 因ffmpeg 需要使用JNI调用,这里采用xuggler方式 使用xuggler获取视频宽. ...
- java获取每月最后一天_java获取每月的最后一天实现方法
实例如下: public static void main(String[] args) throws ParseException { // 获取当月的天数(需完善) SimpleDateForma ...
- java 获取调用者方法_java获取调用当前方法的方法名和行数
java获取调用当前方法的方法名和行数 String className = Thread.currentThread().getStackTrace()[2].getClassName();//调用 ...
- java获取所有进程_Java 获取系统的进程列表
前几天发表了<Java 定时启动服务>文章,现在发表这篇文档<Java 获取系统的进程列表>,看似联系不大,实质在某些需求上还是有所关系.比如现在有这个需求:定时器启动服务时, ...
- java获取扩展名_Java获取文件扩展名称
有时在处理文件时,需要根据文件类型对它们进行不同的处理. java.io.File没有任何获取文件扩展名的方法,这里提供了一个实用工具方法来获取文件扩展名. Java获取文件扩展名 在句点(.)之后, ...
- java 获取包路径_java获取java文件路径的四种方法
java获取java文件路径的四种方法 发布时间:2020-04-17 11:03:45 来源:亿速云 阅读:750 作者:小新 今天小编给大家分享的是java获取java文件路径的四种方法,很多人都 ...
- java获取客户端系统信息_java 获得系统信息
Java代码 import java.util.Properties; Properties props=System.getProperties(); //获得系统属性集 String osName ...
- java 获取 客户端端口_Java获取客户端IP、端口等信息
Java获取客户端IP.端口等信息.txt花前月下,不如花钱"日"下.叶子的离开,是因为风的追求还是树的不挽留?干掉熊猫,我就是国宝!别和我谈理想,戒了!Java获取客户端IP.端 ...
- java获取系统日期_java怎么获取当前日期
java获取当前日期的方法:直接实例化位于Java包java.util的Date类即可,如[Date date = new Date();]. System.currentTimeMillis() 获 ...
最新文章
- CMake 指定安装目录
- python js加密解密_AES用cryptojs加密,用python解密加密Ciph
- WPF解决WindowsFormsHost背景透明
- 建立适合大数据成功的团队
- 聊聊网络游戏同步那点事
- 【福利派送】浪漫七夕,不可辜负!这 8 份礼物请收下!
- Python数据分析实战项目-共享单车骑行数据分析
- uniapp防抖操作
- 【软件质量】软件质量
- php替换文本域中的换行符,文本域中换行符的替换示例
- Struts2 注解模式
- BitMap 的基本原理和实现
- 云杰恒指:8.30恒指期货早盘资讯
- matlab和numpy的ones用法
- 狐狸找兔子 ← C语言实现
- Laravel数据库之Seeding
- JNI_OnLoad 回调Java_Java本地接口(JNI)编程指南和规范(第八章)
- java封装、继承和多态练习题
- 2、phpstudy本地搭建网站
- 2019年燕山大学大学生程序设计大赛(一)
热门文章
- c++工程 eclipse导入项目_在Eclipse中开发C/C++项目
- php 正则抓取页面内容_php 正则表达式抓取网页内容
- 如何选择视频分辨率、帧率、码率?
- SRAM和DRAM区别
- 舍友看老杜视频自学Html,竟直接跳过最重要的form表单环节,太让人痛心了
- 【gmoj】 【tarjan】 【拓扑】 【并查集】 QYQ在艾泽拉斯
- DDL语言(DataDefinelanguage 数据库定义语言)
- 由一张暴利的地图获得的珍贵启示_——————_SADF3443
- JAVA中方法的调用
- FreeNas安装教程