面包屑导航条如何从后台取值

发布于 2021-11-28 04:49:11 字数 123 浏览 850 评论 8

前台页面需要实现一个面包屑的导航条,Bootstrap这个直接写确实很方便,现在要求,这个面包屑的导航条需要的位置数据要是从后台拿出来,就是这个传的值要是通用的,传值用Json,这样一个通用的东西,我应该怎么样去设计,有哪位,给指点下思路,感谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

后知后觉 2021-12-03 14:08:05

树形结构  层次回归

因为看清所以看轻 2021-12-03 11:44:59

给你一个例子吧

id |parent_id |name |

---|----------|--------|

1  |0         |aaa         |             

2  |0         |bbb        |

3  |0         |ccc         |

4  |1         |ddd        |

5  |2         |eee          |

6  |2         |fff            |

7  |2         |ggg         |

8  |3         |iii           |

风透绣罗衣 2021-12-03 00:12:50

后台建立的类目 也就是在数据库中建立你图中 。1.1 1.2这样的目录呗。 你的TreeNode 也就是所有节点都能用?

回眸一笑 2021-12-02 19:35:01

回复
图是为了让你理解数据是怎么封装的,数据库是要有TreeNode类中前三个属性

已下线请稍等 2021-12-02 14:47:32

回复
@chentnt : 那你后台数据库中表值parentid怎么存的? 我表中有 id pid name 这样 , 你那个parentid 值怎么存的。 例如 一级》二级》三级 三级的parentid 是存的1.1.1?

归属感 2021-12-01 14:37:39

回复
少年你是不是数据结构翘课了^_^

陌若浮生 2021-11-30 21:22:14

回复
@chentnt : 嘘!你一下就猜出来了。。

奢华的一滴泪 2021-11-28 05:51:21

最近也在做类似这个问题的东西,说一下自己的解决方案,肯定不是最优解,但是是可行的.

在后台建类目表,需要节点id,父节点id,节点名称

假设你需要从叶子节点去得到完整的路径,可先获取叶子节点数据然后递归一点一点向上获取父节点数据.

返回数据放入的类可以参考这种设计:

private class TreeNode{  
    private String id;  
    private String name;  
    private String parentId;  
    private List<TreeNode> children;  
      
    // TODO getter/setter  
}

然后在service层进行数据格式的封装:

List<TreeNode> menuList = xxManager.findAllMenu();  
  
List<TreeNode> nodeList = new ArrayList<TreeNode>();  
for(TreeNode node1 : menuList){  
    boolean mark = false;  
    for(TreeNode node2 : menuList){  
        if(node1.getParentId()!=null && node1.getParentId().equals(node2.getId())){  
            mark = true;  
            if(node2.getChildren() == null)  
                node2.setChildren(new ArrayList<TreeNode>());  
            node2.getChildren().add(node1);   
            break;  
        }  
    }  
    if(!mark){  
        nodeList.add(node1);   
    }  
}  
//转为json格式        
String json = JSONArray.fromObject(nodeList).toString();

大概的封装思路如下图:

在这里抛砖引玉了,更好的成熟的解决方案肯定有,这里只是个人的一些解决方式.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文