java 机构树怎么生成json

java 机构树怎么生成json,第1张

java 机构树怎么生成json

如果是zTree则后台只需要传一个数组形式的JSON就可以搞定,{name: '父节点1', children: [ {name: '子节点1'}, {name: '子节点2'} ]}这种写法找父子关系不得找死。

下面这种JSON最方便

var nodes = [

{id:1, pId:0, name: "父节点1"},

{id:11, pId:1, name: "子节点1"},

{id:12, pId:1, name: "子节点2"}

]

后台拼接JSON串代码也很简单啊,[id=1 pId=-1 name=名称1]为一条数据放入数组或List中,[id=101 pId=1 name=名称2]为一条数据放入集合,依次类推就是一个数据集了,然后for循环拼装JSON即可:

StringBuilder sb = new StringBuilder()

sb.append("[")

for(...){

sb.append("{\"id\":").append(id).append(",\"pId\":").append(pId).append(",\"name\":\"").append(name).append("\"},")

}

//注意去掉最后一个逗号

......

sb.append("]")

这个问题有点没意义,因为java已经有相应的jar了,不论是阿里的fastjson,还是gson,又或者是jackson,都是已经很成熟的jar了。如果非要自己去写的话,就需要用到反射了。简单来说,就是获取对象的所有属性。复杂说的话,要判断对象的属性,判断属性类型,判断属性值是否为null,判断对象是否是有transient修饰,判断字符串里面是否有双引号等等。然后通过StringBuffer或是StringBuilder去拼接字符串,来生成json串,至于是StringBuffer还是StringBuilder就看你的需要再决定了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11634163.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存