dhtmlxtree json 형식 한 번에 불러오기
3596 단어 json
public class TreeUtil {
public static String nodeList2Json(String pid,List<TreeNode> list){
String json="{id:0,"+createTreeNodeJson(pid,list)+"}";
return json;
}
private static String createTreeNodeJson(String pid,List<TreeNode> nodelist){
List<TreeNode> list=_getByPid(pid,nodelist);
StringBuilder strBulider=new StringBuilder("item:[");
for(int i=0;i<list.size();i++){
TreeNode treeNode=list.get(i);
strBulider.append(node2Json(treeNode));
if(treeNode.isHasChild()){
strBulider.append(createTreeNodeJson(treeNode.getId(),nodelist)+"}");
}
if(i!=list.size()-1)
strBulider.append(",");
}
strBulider.append("]");
return strBulider.toString();
}
private static String node2Json(TreeNode node){
StringBuilder strBulider=new StringBuilder("{");
strBulider.append("id:\"").append(node.getId()).append("\",text:\"").append(node.getText())
.append("\",im0:\"").append(node.getIm0()).append("\",im1:\"").append(node.getIm1()).append("\",im2:\"").append(node.getIm2()).append("\"");
if(node.isOpen())
strBulider.append(",open:1");
if(node.isCall())
strBulider.append(",call:1");
if(node.isSelect())
strBulider.append(",select:1");
if(node.isNocheckbox())
strBulider.append(",nocheckbox:1");
if(node.isDisabled())
strBulider.append(",disabled:1");
if(!StringUtils.isEmpty(node.getUserdata()))
strBulider.append(",userdata:").append(node.getUserdata());
if(node.isHasChild())
strBulider.append(",child:1,");
else
strBulider.append(",child:0}");
return strBulider.toString();
}
private static List<TreeNode> _getByPid(String pid,List<TreeNode> list){
List<TreeNode> treeNodeList=new ArrayList<TreeNode>();
if(StringUtils.isBlank(pid)){
for(int i=0;i<list.size();i++){
TreeNode node=list.get(i);
if(StringUtils.isEmpty(node.getParentId()))
treeNodeList.add(node);
}
return treeNodeList;
}
for(int i=0;i<list.size();i++){
TreeNode node=list.get(i);
if(pid.equals(node.getParentId()))
treeNodeList.add(node);
}
list.removeAll(treeNodeList);
return treeNodeList;
}
}
treeNode 클래스
private String id;
private String text;
private String im0;
private String im1;
private String im2;
private int orderNo;
private String userdata;
private boolean isSelect=false; //
private boolean isOpen=false; //
private boolean isCall=false; //
private boolean isChecked=false;// checked ,
private boolean hasChild = false; //
private boolean nocheckbox = false; // checkbox ,
private boolean disabled = false; // :1 ,0
private String parentId;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
콘텐츠 SaaS | JSON 스키마 양식 빌더Bloomreach Content를 위한 JSON Form Builder 맞춤형 통합을 개발합니다. 최근 Bloomreach Content SaaS는 내장 앱 프레임워크를 사용하여 혁신적인 콘텐츠 유형 필드를 구축할...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.