树形结构构造大体分为如下三步:
(1)构造基类对象
(2)构造扩展类对象
(3)组装算法
一 构造基类对象
基类对象必须包含对象id、父级id、子对象集合,其他属性根据需要可自行定义,如下图所示:
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import java.io.Serializable;
import java.util.List;
@ToString
@Getter
@Setter
public class HlmsLocBaseTree implements Serializable{
private static final long serialVersionUID = 1L;
/**主键id */
private String id;
/** 父级id */
private Long parentId;
/** 空间信息编码 */
private String locCode;
/** 空间信息名称 */
private String locName;
// 叶子节点标识 0-否 1-是
private String leafFlag;
//**子级空间信息项*/
private List<? extends HlmsLocBaseTree> children;
}
二 构造扩展类对象
扩展类继承基类对象,具体属性值根据业务规则自己添加