此方法有用于动态表头制作,多级菜单的制作。
首先在数据库建表,表中用id,parent_id 关键字段
Class Demo(){
private int countColspan ; // 节点的叶子节点个数
//setter.getter 方法省略
List gridtemplate = new ArrayList() ;
//从数据库获取list集合,{map,map,map...}
private int countCol(String idStr){//设置该id下所有叶子节点个数,并返回直接子节点个数
int count = gridtemplate.size() ; //
String parentColID = "" ;
String childID = "" ;
for (Object mapObj : gridtemplate) {
Map map = (Map) mapObj ;
childID = ObjectUtils.toString(map.get("ID"));
parentColID = ObjectUtils.toString(map.get("PARENT_ID"));
if(parentColID.equalsIgnoreCase(idStr)){
count-- ;
countCol(childID);
}else{
continue ;
}
}
if(count == gridtemplate.size()){
this.countColspan++ ;
}
return (gridtemplate.size()-count) ;
}
}