我有这样一个业务表
业务表中有这样一条数据
可以看到这条数据 thingnum编号和 parentthingnum父级编号相等
我在代码中用递归函数获取该编号的所有父级编号时。
出现无限递归 导致栈溢出错误。
代码如下:
/**
* 普通获取某个菜单的所有父级编号(单个通用 另一种方式)
*
* @param thingNum
* @param parentThingNumList
* @param thingNumAndTingMap
*/
public void getAllParentThingNumList(String thingNum,List<String> parentThingNumList,Map<String,Thing> thingNumAndTingMap){
Thing thing = thingNumAndTingMap.get(thingNum);
if(thing!=null){
parentThingNumList.add(thingNum);
getAllParentThingNumList(thing.getParentThingNum(),parentThingNumList,thingNumAndTingMap);
}
}
修改数据库错误数据,则栈溢出错误解决。