再帰的には、メニューバーを取得します

@Override 
公開BaseResponse listChildSort(){<?>
//検索すべてのトップレベルのメニュー
一覧<SysPermission> sysPermissionList = sysPermissionMapper.selectByParentId(0);
リスト<子ども> childrenList = Lists.newArrayList();
のため(SysPermission sysPermission:sysPermissionList) {
//次のメニュー及び下位メニューの再帰セット追加
childrenList.add(listChild(sysPermissionを));
}
(childrenList.size()== 0){IF
リターンBaseResponse.createByError( "データなし");
}
BaseResponse.createBySuccessリターン(childrenList);
}
プライベート子供listChild(sysPermission sysPermission){
//再帰新しいオブジェクト
子供子供子供が新しい新=();
//名前IDと現在のメニューオブジェクトに格納されています
children.setId(sysPermission.getId()+ "");
children.setName(sysPermission.getName());
メニュー//現在のメニューIDと前のメニューを探す
一覧<SysPermission> sysPermissionList = sysPermissionMapper.selectByParentId( sysPermission.getId( ).intValue());
リスト<子供> childrenList Lists.newArrayList =();
//トラバース下位メニュー
(SysPermission sysPermissionChild用:sysPermissionList){
//再帰サブメニュー、メニューセットと下に格納されている
childrenList.add(listChild( sysPermissionChild));
}
//再帰的なオブジェクトに格納された下位メニュー設定
children.setChildren(childrenList.sizeを()> 0 childrenList :? NULL);
戻り子供;
}

おすすめ

転載: www.cnblogs.com/ONFE/p/12209152.html