将json字符串转换为java对象
同样先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。
jsonobject obj = new jsonobject().fromobject(jsonstr);//将json字符串转换为json对象
将json对象转换为java对象
person jb = (person)jsonobject.tobean(obj,person.class);//将建json对象转换为person对象
将java对象转换为json字符串
先将java对象转换为json对象,在将json对象转换为json字符串
jsonobject json = jsonobject.fromobject(obj);//将java对象转换为json对象
string str = json.tostring();//将json对象转换为字符串
项目中需要将数据格式:
[{node: 0, index: null,status: null,prenode: null,postnode: [{node: xxx_4}, {node: xxx_3}, {node: xxx_2}, {node: xxx_14}] }, {node: xxx_2,index: index_1,status: 表达式1,prenode: [{node: xxx_0}],postnode: [{node: xxx_5}] }, {node: xxx_14,index: index_4,status: 表达式5,prenode: [{node: xxx_0}],postnode: [{node: xxx_13}, {node: xxx_5}] }, {node: xxx_3,index: index_2,status: 表达式2,prenode: [{node: xxx_0}],postnode: [{node: xxx_5}] }, {node: xxx_4,index: index_3,status: 表达式3,prenode: [{node: xxx_0}],postnode: [{node: xxx_12}] }, {node: xxx_5,index: index_4,status: 表达式4,prenode: [{node: xxx_3}, {node: xxx_2}, {node: xxx_14}],postnode: [{node: xxx_6}] }, {node: xxx_6,index: index_5,status: 表达式6,prenode: [{node: xxx_5}],postnode: [{node: xxx_7}] }, {node: xxx_7,index: index_6,status: 表达式7,prenode: [{node: xxx_6}],postnode: [{node: xxx_8}] }, {node: xxx_8,index: index_4,status: 表达式8,prenode: [{node: xxx_7}],postnode: [{node: xxx_9}, {node: xxx_10}] }, {node: xxx_9,index: index_5,status: 表达式5,prenode: [{node: xxx_8}],postnode: [{node: xxx_11}] }, {node: xxx_10,index: index_7,status: 表达式6,prenode: [{node: xxx_8}],postnode: [{node: xxx_11}] }, {node: xxx_11,index: index_8,status: 表达式7,prenode: [{node: xxx_9}, {node: xxx_10}],postnode: [{node: xxx_12}] }, {node: xxx_12,index: index_8,status: 表达式7,prenode: [{node: xxx_11}, {node: xxx_4}],postnode: [{node: xxx_13}] }, {node: xxx_13,index: ,status: ,prenode: [{node: xxx_14}, {node: xxx_12}],postnode: [] }, {node: 9999,index: null,status: null,prenode: [{node: xxx_14}, {node: xxx_12}],postnode: null}]
项目中list对象内容
1 jsonmodel{node='xxx_2', prenode='', index='index_1', status='表达式1'} 2 jsonmodel{node='xxx_14', prenode='', index='index_4', status='表达式5'} 3 jsonmodel{node='xxx_3', prenode='', index='index_2', status='表达式2'} 4 jsonmodel{node='xxx_4', prenode='', index='index_3', status='表达式3'} 5 jsonmodel{node='xxx_5', prenode='xxx_2', index='index_4', status='表达式4'} 6 jsonmodel{node='xxx_5', prenode='xxx_3', index='index_4', status='表达式5'} 7 jsonmodel{node='xxx_5', prenode='xxx_14', index='index_4', status='表达式5'} 8 jsonmodel{node='xxx_6', prenode='xxx_5', index='index_5', status='表达式6'} 9 jsonmodel{node='xxx_7', prenode='xxx_6', index='index_6', status='表达式7'}10 jsonmodel{node='xxx_8', prenode='xxx_7', index='index_4', status='表达式8'}11 jsonmodel{node='xxx_9', prenode='xxx_8', index='index_5', status='表达式5'}12 jsonmodel{node='xxx_10', prenode='xxx_8', index='index_7', status='表达式6'}13 jsonmodel{node='xxx_11', prenode='xxx_10', index='index_8', status='表达式7'}14 jsonmodel{node='xxx_11', prenode='xxx_9', index='index_8', status='表达式8'}15 jsonmodel{node='xxx_12', prenode='xxx_11', index='index_8', status='表达式7'}16 jsonmodel{node='xxx_12', prenode='xxx_4', index='index_8', status='表达式8'}17 jsonmodel{node='xxx_13', prenode='xxx_14', index='', status='表达式13'}18 jsonmodel{node='xxx_13', prenode='xxx_12', index='', status='表达式14'}
testjson() <jsonmodel> list= arraylist<>== jsonmodel(xxx_2,,index_1,表达式1= jsonmodel(xxx_14,,index_4,表达式5= jsonmodel(xxx_3,,index_2,表达式2= jsonmodel(xxx_4,,index_3,表达式3= jsonmodel(xxx_5,xxx_2,index_4,表达式4= jsonmodel(xxx_5,xxx_3,index_4,表达式5= jsonmodel(xxx_5,xxx_14,index_4,表达式5= jsonmodel(xxx_6,xxx_5,index_5,表达式6= jsonmodel(xxx_7,xxx_6,index_6,表达式7= jsonmodel(xxx_8,xxx_7,index_4,表达式8= jsonmodel(xxx_9,xxx_8,index_5,表达式5= jsonmodel(xxx_10,xxx_8,index_7,表达式6= jsonmodel(xxx_11,xxx_10,index_8,表达式7= jsonmodel(xxx_11,xxx_9,index_8,表达式8= jsonmodel(xxx_12,xxx_11,index_8,表达式7= jsonmodel(xxx_12,xxx_4,index_8,表达式8= jsonmodel(xxx_13,xxx_14,,表达式13= jsonmodel(xxx_13,xxx_12,,表达式14->string str=jsonnode rootnode =<childnode> prenode_set=<childnode> postnode_set=<node> nodelist= arraylist<>node node=0<childnode> childnodelist= hashset<>( i=0;i
1 package com.yf.af.biz.test; 2 3 /** 4 * created by chen on 2017/7/14. 5 */ 6 public class jsonmodel { 7 private string node; 8 private string prenode; 9 private string index;10 private string status;11 12 public string getnode() {13 return node;14 }15 16 public void setnode(string node) {17 this.node = node;18 }19 20 public string getprenode() {21 return prenode;22 }23 24 public void setprenode(string prenode) {25 this.prenode = prenode;26 }27 28 public string getindex() {29 return index;30 }31 32 public void setindex(string index) {33 this.index = index;34 }35 36 public string getstatus() {37 return status;38 }39 40 public void setstatus(string status) {41 this.status = status;42 }43 44 public jsonmodel(string node, string prenode, string index, string status) {45 this.node = node;46 this.prenode = prenode;47 this.index = index;48 this.status = status;49 }50 51 public jsonmodel() {52 }53 54 @override55 public string tostring() {56 return jsonmodel{ +57 node=' + node + '\'' +58 , prenode=' + prenode + '\'' +59 , index=' + index + '\'' +60 , status=' + status + '\'' +61 '}';62 }63 }
view code
1 package com.yf.af.biz.test; 2 3 import java.util.list; 4 import java.util.set; 5 6 /** 7 * created by chen on 2017/7/15. 8 */ 9 public class node {10 private string node;11 private string index;12 private string status;13 14 private set<childnode> prenode;15 16 private set<childnode> postnode;17 18 public string getnode() {19 return node;20 }21 22 public void setnode(string node) {23 this.node = node;24 }25 26 public string getindex() {27 return index;28 }29 30 public void setindex(string index) {31 this.index = index;32 }33 34 public string getstatus() {35 return status;36 }37 38 public void setstatus(string status) {39 this.status = status;40 }41 42 public set<childnode> getprenode() {43 return prenode;44 }45 46 public void setprenode(set<childnode> prenode) {47 this.prenode = prenode;48 }49 50 public set<childnode> getpostnode() {51 return postnode;52 }53 54 public void setpostnode(set<childnode> postnode) {55 this.postnode = postnode;56 }57 58 @override59 public string tostring() {60 return node{ +61 node=' + node + '\'' +62 , index=' + index + '\'' +63 , status=' + status + '\'' +64 , prenode= + prenode +65 , postnode= + postnode +66 '}';67 }68 69 70 public node() {71 }72 }
view code
1 package com.yf.af.biz.test; 2 3 /** 4 * created by chen on 2017/7/15. 5 */ 6 public class childnode { 7 private string node; 8 9 public string getnode() {10 return node;11 }12 13 public void setnode(string node) {14 this.node = node;15 }16 17 public childnode(string node) {18 this.node = node;19 }20 21 public childnode() {22 }23 }
view code
以上就是java中对象与json之间的相互转换的详细内容。