首先引入包:
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.4</version> </dependency>
//测试代码:
1.JSON与list的互转
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.List; public class TestMain { public static void main(String[] args){ Student s1 = new Student(); s1.setName("zhangshan"); s1.setAge(10); List<Student> studentList = new ArrayList<Student >(); studentList.add(s1); //集合转json字符串 String str=JSON.toJSONString(studentList); System.out.println(str); //json字符串转集合list List<Student> list = new ArrayList<Student>(); list = JSONObject.parseArray(str, Student.class); System.out.println(list); for(Student s:list){ System.out.println(s.getName()+s.getAge()); } } }
输出结果:
[{"age":10,"name":"zhangshan"}]
[Student@3d04a311]
zhangshan10
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.List; public class TestMain { public static void main(String[] args){ Student s1 = new Student(); s1.setName("zhangshan"); s1.setAge(10); List<Student> studentList = new ArrayList<Student >(); // studentList.add(s1); //空集合转json字符串 String str=JSON.toJSONString(studentList); System.out.println(str); //json字符串转集合list List<Student> list = new ArrayList<Student>(); list = JSONObject.parseArray(str, Student.class); System.out.println(list+"===="+list.size()); for(Student s:list){ System.out.println(s.getName()+s.getAge()); } } }
list.size =0 :输出 结果 :
[]
[]====0
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.List; public class TestMain { public static void main(String[] args){ Student s1 = new Student(); s1.setName("zhangshan"); s1.setAge(10); List<Student> studentList = null; // studentList.add(s1); //空集合转json字符串 String str=JSON.toJSONString(studentList); System.out.println(str); //json字符串转集合list List<Student> list = new ArrayList<Student>(); list = JSONObject.parseArray(str, Student.class); System.out.println(list); if(null !=list ){ for(Student s:list){ System.out.println(s.getName()+s.getAge()); } } } }
list =null,输出结果:
null
null
2.JSON与Map的互转
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class TestMain { public static void main(String[] args) { Student s1 = new Student(); s1.setName("zhangshan"); s1.setAge(10); Map<String, Student> map = new HashMap<String, Student>(); map.put("zhangshan", s1); System.out.println(map); String json = JSON.toJSONString(map); System.out.println(json); Map map1 = JSON.parseObject(json); System.out.println(map1); System.out.println(map1 instanceof Map); } }
输出结果:
{zhangshan=Student@3764951d}
{"zhangshan":{"age":10,"name":"zhangshan"}}
{"zhangshan":{"name":"zhangshan","age":10}}
true
如果map.size=0,则上述输出:
{}
{}
{}
true
如果map =null,则输出:
null
null
null
false
3.JSON与对象的互转
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class TestMain { public static void main(String[] args) { Student s1 = new Student(); s1.setName("zhangshan"); s1.setAge(10); System.out.println(s1); String json = JSON.toJSONString(s1); System.out.println(json); Student student = JSON.parseObject(json, Student.class); System.out.println(student); } }
如果s1=new Student();则输出:因为int会默认初始化一值
Student@3764951d
{"age":0}
Student@277c0f21
如果s1=null,则输出:
null
null
null