importjava.util.ArrayList; importjava.util.HashMap; importjava.util.List; importjava.util.Map; importcom.alibaba.fastjson.JSON; importcom.alibaba.fastjson.TypeReference; publicclassTestMain{ staticclassPerson{ privateStringid; privateStringname; privateintage; publicPerson(){ } publicPerson(Stringid,Stringname,intage){ this.id=id; this.name=name; this.age=age; } publicStringgetId(){ returnid; } publicvoidsetId(Stringid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicintgetAge(){ returnage; } publicvoidsetAge(intage){ this.age=age; } @Override publicStringtoString(){ return"Person[age="+age+",id="+id+",name="+name+"]"; } } publicstaticvoidmain(String[]args){ method1(); method2(); method3(); method4(); } staticvoidmethod1(){ System.out.println("JavaBean转化示例开始----------"); Personperson=newPerson("1001","fastjson",22); //这里将javabean转化成json字符串 StringjsonString=JSON.toJSONString(person); System.out.println(jsonString); //这里将json字符串转化成javabean对象,person=JSON.parSEObject(jsonString,Person.class); System.out.println(person.toString()); } staticvoidmethod2(){ System.out.println("List<javabean>转化示例开始----------"); Personperson1=newPerson("1","fastjson1",1); Personperson2=newPerson("2","fastjson2",2); List<Person>persons=newArrayList<Person>(); persons.add(person1); persons.add(person2); StringjsonString=JSON.toJSONString(persons); System.out.println("json字符串:"+jsonString); //解析json字符串 List<Person>persons2=JSON.parseArray(jsonString,Person.class); //输出解析后的person对象 System.out.println("person1对象:"+persons2.get(0).toString()); System.out.println("person2对象:"+persons2.get(1).toString()); } staticvoidmethod3(){ System.out.println("List<String>转化示例开始----------"); List<String>list=newArrayList<String>(); list.add("fastjson1"); list.add("fastjson2"); list.add("fastjson3"); StringjsonString=JSON.toJSONString(list); System.out.println("json字符串:"+jsonString); //解析json字符串 List<String>list2=JSON.parSEObject(jsonString,newTypeReference<List<String>>(){}); System.out.println(list2.get(0)+"::"+list2.get(1)+"::"+list2.get(2)); } staticvoidmethod4(){ System.out.println("List<Map<String,Object>>转化示例开始----------"); Map<String,Object>map=newHashMap<String,Object>(); map.put("key1","value1"); map.put("key2","value2"); Map<String,Object>map2=newHashMap<String,Object>(); map2.put("key1",1); map2.put("key2",2); List<Map<String,Object>>list=newArrayList<Map<String,Object>>(); list.add(map); list.add(map2); StringjsonString=JSON.toJSONString(list); System.out.println("json字符串:"+jsonString); //解析json字符串 List<Map<String,Object>>list2=JSON.parSEObject(jsonString,newTypeReference<List<Map<String,Object>>>(){}); System.out.println("map的key1值"+list2.get(0).get("key1")); System.out.println("map的key2值"+list2.get(0).get("key2")); System.out.println("ma2p的key1值"+list2.get(1).get("key1")); System.out.println("map2的key2值"+list2.get(1).get("key2")); } }
输出:
JavaBean转化示例开始---------- {"age":22,"id":"1001","name":"fastjson"} Person [age=22,id=1001,name=fastjson] List<javabean>转化示例开始---------- json字符串:[{"age":1,"id":"1","name":"fastjson1"},{"age":2,"id":"2","name":"fastjson2"}] person1对象:Person [age=1,id=1,name=fastjson1] person2对象:Person [age=2,id=2,name=fastjson2] List<String>转化示例开始---------- json字符串:["fastjson1","fastjson3"] fastjson1::fastjson2::fastjson3 List<Map<String,Object>>转化示例开始 ---------- json字符串:[{"key1":"value1","key2":"value2"},{"key1":1,"key2":2}] map的key1值value1 map的key2值value2 ma2p的key1值1 map2的key2值2 |