系统需要实现树型结构复制功能,数据设计为id,pid,name结构类型,现将使用递归实现的方法记录,步骤如下:
一、先获取根节点
二、循环根节点
三、循环根节点调用递归插入数据方法
递归方法代码如下,具体需求自行修改
public static void isSetInfoByCopy(String Id, String parentId) throws SQLException {
//新id
String newId = UUIDTools.getUUID().toUpperCase();
**DAO dao = new **DAO();
//先插入表数据(插入代码自行写)
dao.isSetInsertInfoByCopy(newId, Id, parentId);
//查询是否有子节点(查询方法自行写)
List<Map<String, Object>> list = dao.queryChildrenInfoByYear(Id);
//循环子节点、递归
String childId;
if (!list.isEmpty()) {
int len = list.size();
for (int i = 0; i < len; i++) {
childId = (String) list.get(i).get("key");
isSetInfoByCopy(childId, newId);
}
}
}
原文:https://www.cnblogs.com/lucl/p/12191997.html