Test
1 package atsyc.test; 2 3 import atsyc.pojo.Dog; 4 import atsyc.pojo.Person; 5 import com.fasterxml.jackson.core.JsonProcessingException; 6 import com.fasterxml.jackson.databind.ObjectMapper; 7 import org.junit.Test; 8 9 import java.util.ArrayList; 10 import java.util.HashMap; 11 import java.util.List; 12 import java.util.Map; 13 14 public class TestJson { 15 @Test 16 public void testWriteJson() throws JsonProcessingException { 17 //实例化Person对象,将Person对象转换为JSON串 18 Dog dog = new Dog("多多"); 19 Person person = new Person("茶茶",20,dog); 20 21 //将Person对象转换成一个字符串 Jackson 22 ObjectMapper objectMapper = new ObjectMapper(); 23 String personstr = objectMapper.writeValueAsString(person); 24 System.out.println(personstr); 25 } 26 27 @Test 28 public void testReadJson() throws JsonProcessingException { 29 String personstr = "{\"name\":\"茶茶\",\"age\":20,\"dog\":{\"name\":\"多多\"}}"; 30 ObjectMapper objectMapper= new ObjectMapper(); 31 Person person = objectMapper.readValue(personstr,Person.class); 32 System.out.println(person); 33 } 34 35 //map集合和JSON串转换 36 @Test 37 public void testMapJson() throws JsonProcessingException { 38 Map data = new HashMap<>(); 39 data.put("a","valuea"); 40 data.put("b","valueb"); 41 ObjectMapper objectMapper = new ObjectMapper(); 42 String s = objectMapper.writeValueAsString(data); 43 System.out.println(s); 44 } 45 46 //list array转换问题 47 @Test 48 public void tesListJson() throws JsonProcessingException { 49 // List data = new ArrayList(); 50 // data.add("a"); 51 // data.add("b"); 52 // data.add("c"); 53 // String[] data = {"a","b","c"}; 54 Dog dog = new Dog("多多"); 55 Person person = new Person("茶茶",20,dog); 56 List data = new ArrayList(); 57 data.add(person); 58 59 ObjectMapper objectMapper = new ObjectMapper(); 60 String s = objectMapper.writeValueAsString(data); 61 System.out.println(s); 62 } 63 64 }
Dog类
1 package atsyc.pojo; 2 3 public class Dog { 4 private String name; 5 6 public Dog(){ 7 8 } 9 10 public Dog(String name){ 11 this.name = name; 12 } 13 14 public String getName() { 15 return name; 16 } 17 18 public void setName(String name) { 19 this.name = name; 20 } 21 }
Person类
1 package atsyc.pojo; 2 3 import java.util.Objects; 4 5 public class Person { 6 private String name; 7 private Integer age; 8 private Dog dog; 9 10 @Override 11 public boolean equals(Object o) { 12 if (this == o) return true; 13 if (o == null || getClass() != o.getClass()) return false; 14 Person person = (Person) o; 15 return Objects.equals(name, person.name)&&Objects.equals(age, person.age)&&Objects.equals(dog, person.dog); 16 } 17 @Override 18 public int hashCode() { 19 return Objects.hash(name,age,dog); 20 } 21 22 public Person() { 23 } 24 25 public Person(String name, Integer age, Dog dog) { 26 this.name = name; 27 this.age = age; 28 this.dog = dog; 29 } 30 31 public String getName() { 32 return name; 33 } 34 35 public void setName(String name) { 36 this.name = name; 37 } 38 39 public Integer getAge() { 40 return age; 41 } 42 43 public void setAge(Integer age) { 44 this.age = age; 45 } 46 47 public Dog getDog() { 48 return dog; 49 } 50 51 public void setDog(Dog dog) { 52 this.dog = dog; 53 } 54 }
标签:服务器端,dog,Dog,Person,JSON,String,使用,public,name From: https://www.cnblogs.com/IrVolcano/p/18081324