Java,mysql查询,资源分组下的资源

数据库使用mysql,想要实现的功能是比如我有一个资源分组,资源分组下还有资源分组,然后才是资源,我要查询,或者怎么做,才能把他们显示到页面,用for循环吗

树形分层结构的表格存储问题,

  1. 确定资源分组有几层。
    如果没有限制,那就做一个强制限制,无限的那种会对程序存在隐患。如果固定最多两次,第三次就是资源本身,那就OK。
  2. 建表的时候,都会建立 id 字段 和 parentId 字段,用于层级之间的关联。
    有的表还建立 level 层数字段,方便后续程序的判断和处理。
  3. 一般情况下,对树的操作,不会一次性读取所有数据,而是进行分层查询,给定一个父节点的Id,查询它的所有子节点。
    子节点的个数也要做限制,要设置一个最大个数,避免程序后期出现bug。
  4. 分层查询的情况比较简单,根据parentId进行查询即可,
    前端每次手动展开一个节点,都请求服务端,服务端根据parentId查询出子节点的信息返回至前端,完成展开节点的操作。
  5. 一次性读取整棵树的情况,需要Java类也要存在树型结构才行,可以递归函数,每次重复根据父节点的分层查询即可,
    递归函数查询当前节点的子节点后,将子节点添加到当前节点的子节点列表中,直到当前节点不包含子节点为止。
    由于树形结构的不确定性,递归查询调用的次数和返回数据的多少都不确定,如果数据量庞大,容易爆掉内存或爆掉数据库。

你指的是树形结构吧?如果数据量不多可以一次性返给前端循环遍历,如果数据太多可以把顶层数据项返给前端,每次查看下级做一次动态查询