mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
addd Tree
This commit is contained in:
@@ -12,51 +12,50 @@ import java.util.List;
|
||||
* @author liangbaikai
|
||||
*/
|
||||
public class TreeTest {
|
||||
// 模拟数据
|
||||
static List<Node> nodeList = CollectionUtil.newArrayList();
|
||||
// 模拟数据
|
||||
static List<TreeNode<String>> nodeList = CollectionUtil.newArrayList();
|
||||
|
||||
static {
|
||||
// 模拟数据
|
||||
nodeList.add(new Node("1", "0", "系统管理", 5));
|
||||
nodeList.add(new Node("11", "1", "用户管理", 222222));
|
||||
nodeList.add(new Node("111", "11", "用户添加", 0));
|
||||
nodeList.add(new Node("2", "0", "店铺管理", 1));
|
||||
nodeList.add(new Node("21", "2", "商品管理", 44));
|
||||
nodeList.add(new Node("221", "2", "商品管理2", 2));
|
||||
}
|
||||
static {
|
||||
// 模拟数据
|
||||
nodeList.add(new TreeNode<>("1", "0", "系统管理", 5));
|
||||
nodeList.add(new TreeNode<>("11", "1", "用户管理", 222222));
|
||||
nodeList.add(new TreeNode<>("111", "11", "用户添加", 0));
|
||||
|
||||
nodeList.add(new TreeNode<>("2", "0", "店铺管理", 1));
|
||||
nodeList.add(new TreeNode<>("21", "2", "商品管理", 44));
|
||||
nodeList.add(new TreeNode<>("221", "2", "商品管理2", 2));
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void sampleTree() {
|
||||
List<TreeNodeMap> treeNodes = TreeUtil.build(nodeList, "0");
|
||||
@Test
|
||||
public void sampleTree() {
|
||||
List<Tree<String>> treeNodes = TreeUtil.build(nodeList, "0");
|
||||
for (Tree<String> tree : treeNodes) {
|
||||
Console.log(tree);
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println(treeNodes);
|
||||
}
|
||||
@Test
|
||||
public void tree() {
|
||||
|
||||
@Test
|
||||
public void tree() {
|
||||
//配置
|
||||
TreeNodeConfig treeNodeConfig = new TreeNodeConfig();
|
||||
// 自定义属性名 都要默认值的
|
||||
treeNodeConfig.setWeightKey("order");
|
||||
treeNodeConfig.setDeep(3);
|
||||
treeNodeConfig.setIdKey("rid");
|
||||
|
||||
//配置
|
||||
TreeNodeConfig treeNodeConfig = new TreeNodeConfig();
|
||||
// 自定义属性名 都要默认值的
|
||||
treeNodeConfig.setWeightKey("order");
|
||||
treeNodeConfig.setDeep(3);
|
||||
treeNodeConfig.setIdKey("rid");
|
||||
|
||||
//转换器
|
||||
List<TreeNodeMap> treeNodes = TreeUtil.build(nodeList, "0", treeNodeConfig,
|
||||
new Convert<Node, TreeNodeMap>() {
|
||||
@Override
|
||||
public void convert(Node object, TreeNodeMap treeNode) {
|
||||
treeNode.setId(object.getId());
|
||||
treeNode.setParentId(object.getPid());
|
||||
treeNode.setWeight(object.getWeight());
|
||||
treeNode.setName(object.getName());
|
||||
// 扩展属性 ...
|
||||
treeNode.extra("extraField", 666);
|
||||
treeNode.extra("other", new Object());
|
||||
}
|
||||
});
|
||||
System.out.println(treeNodes);
|
||||
}
|
||||
//转换器
|
||||
List<Tree<String>> treeNodes = TreeUtil.build(nodeList, "0", treeNodeConfig,
|
||||
(treeNode, tree) -> {
|
||||
tree.setId(treeNode.getId());
|
||||
tree.setParentId(treeNode.getParentId());
|
||||
tree.setWeight(treeNode.getWeight());
|
||||
tree.setName(treeNode.getName());
|
||||
// 扩展属性 ...
|
||||
tree.putExtra("extraField", 666);
|
||||
tree.putExtra("other", new Object());
|
||||
});
|
||||
System.out.println(treeNodes);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user