例如在获取菜单节点时
public Node getNode(String nodeID) {
List<Menu> list = findAllMenus();
Map<String, Node> nodeMap = new LinkedHashMap<String, Node>();
Node node = null;
for (Menu menu : list) {
/*if(menu.getMenuID().equals("1491996237270")){
continue;
}*/
node = new Node();
BeanUtils.copyProperties(menu, node);
nodeMap.put(node.getId(), node);
}
for (Node n : nodeMap.values()) {
Node parent = nodeMap.get(n.getParentID());
if (null != parent) {
parent.getChildren().add(n);
}
}
Node root = nodeMap.get(nodeID);
return root;
}
只需要其中的属性匹配就可以完成复制。