## 6.2.24 wrapTreeTableRoute 构造树形表节点路径
![](images/aee1b45a103b8858056b41cfb61eea97bf6d6d03.png)![](https://img.kancloud.cn/68/33/6833289030c53765563c52e24bd2746c_554x122.png)
参见:TreeTableModel.java
![](images/7a810dbdd22f3a1349da3f4ad4af16dd77a5bd58.png)![](https://img.kancloud.cn/42/09/42097f65fde49f496b8267dab22375a1_554x477.png)
* 使用说明
wrapTreeTableRoute一般针对树形结构的表,如机构信息表(id\\organ\_pid),我们增加NODE\_ROUTE\\NODE\_LEVEL\\IS\_LEAF 三个辅助字段,如下图:
![](images/27da851acba7bf3c49548451c5948cf57422e336.png)![](https://img.kancloud.cn/12/32/1232a29e87c09ed4cd04271652170d70_554x166.png)
具体代码参见:sqltoy-quickstart 项目:
![](images/50e02a6eff6f40f30f653300ffe6a97cb57c1472.png)![](https://img.kancloud.cn/06/ae/06aefa167f7b0331e4884fd58f01328a_554x585.png)
注意:正确的保存方式应该要放在同一个事务里面:
![](images/07f7496a2567caa39aaa6f32793fb0653c675590.png)![](https://img.kancloud.cn/89/ed/89ede1ded1a3d9988d690849a7d39590_587x172.png)
通过设置节点路径,便于我们跨数据库快速检索树形结构的表,如:
![](images/7de97f75672b348578eb9dea5688b455cc118b5c.png)![](https://img.kancloud.cn/b2/83/b28356f1fa6c6180f027c479ee58ca10_554x187.png)
当然可以检索某几个节点的所有子节点,也可以定义检索的层次和是否叶子节点(请根据实际情况利用节点等级、是否叶子节点等标志,组织sql语句检索你需要的数据用于恰当的场景),如查询多个节点的所有子节点(切记:这里只是简单的举例,实际中需要自己举一反三,很多开发者凡是没有提供范例的就认定是做不了,甚至工作好几年的开发者也是这种思维):
![](images/e2a74cd9c8ee9f4a47cae6d29dbf739f7beb7834.png)![](https://img.kancloud.cn/a2/0f/a20f787964ab655aa0747ee86b99320f_553x258.png)
在Dao层的应用:
![](images/a29157c63dfcd8259748474fc79b0602cb1bfa86.png)![](https://img.kancloud.cn/fe/4d/fe4dbe0322b7f2de26d5036f6b06e51d_554x152.png)
注:如果设置idLength=-1,则NODE\_ROUTE就是实际的ID链接(结尾会多一个逗号,用于instr判断的准确性),如果idLength>0,如idLength=8,节点路径会自动补齐8位长度(末尾则无需增加逗号)。
![](images/ab95116bfbcaec1752fe1b7bd2beb83334dc3946.png)![](https://img.kancloud.cn/61/07/61072ebcbd87a0cfce88b1fe58c33523_554x52.png)
结合页面使用:
通过排序方式形成页面可以直接输出的层级关系结构
![](images/c89592beb33f9cc4af85baebb7ee03f327ac35cd.png)![](https://img.kancloud.cn/f6/91/f691d09ded63b0238acd5c9a39644ad0_545x214.png)
- 1.简介
- 开发历程
- 技术架构
- 问答了解
- 版本历史
- update-5.1.4、4.18.43
- update-5.1.2
- 早期历史
- 5.1.15.rc1
- 2.快速使用
- 示例与环境
- quickvo工具使用
- 用法说明
- 关键注意事项
- 严格VO(DTO)和POJO(entity)分层
- 3.教程
- spring项目搭建
- Toy-ORM 配置
- 详细配置参数
- 缓存功能
- 缓存配置、缓存扩展
- 扩展缓存框架配置
- 缓存翻译
- 其他缓存应用场景
- 公共功能
- 表(对象)关联
- 公共字段赋值
- 链式操作
- DTO与POJO互转
- 对象操作
- save + update
- delete + trunk
- load加载数据
- 唯一验证
- 树形数据
- sharding分库分表
- SQL操作
- sql文件规则
- filters说明
- 缓存翻译
- 分库分表
- 汇总、环比
- 行列转换
- 数据脱敏
- 格式化-数字日期
- sqlToy的sql查询基本规则
- Sql查询功能
- load操作
- get操作
- find操作
- 分页查询
- 并行查询
- execute操作
- executeSql
- executeStore
- 数据库特性
- 主键策略
- JSON等类型扩展支持
- 跨库说明--异种库兼容
- 数据库保留字处理
- 多源-多库-异库
- 多数据源
- Mongodb支持
- ElasticSearch支持
- 高级扩展
- 补充-if+fast+blank+value+loop
- 高级功能
- 完美sql
- 快速分页
- 缓存翻译
- 防止sql注入
- 字段加解密
- 扩展集成