Библиотека для работы с JSON
pom.xml
<properties> <jackson.version>2.13.1</jackson.version> </properties> <dependencies> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>${jackson.version}</version> </dependency> </dependencies>
User.java
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import java.util.List; public class User { @JsonProperty("id_number") private long id; @JsonProperty("first_name") private String name; @JsonProperty("phone_numbers") private List<String> phones; @JsonIgnore private String level; public User() { } public User(long id, String name, List<String> phones, String level) { this.id = id; this.name = name; this.phones = phones; this.level = level; } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<String> getPhones() { return phones; } public void setPhone(List<String> phones) { this.phones = phones; } public String getLevel() { return level; } public void setLevel(String level) { this.level = level; } @Override public String toString() { return "User[ID:" + id + ", Name: " + name + ", Phone: " + phones + "]"; } }
Main.java
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) throws JsonProcessingException { List<String> listOfNumbers = new ArrayList<>(); listOfNumbers.add("123"); listOfNumbers.add("234"); User userForSerialization = new User(1, "a", listOfNumbers, "c"); //serialization ObjectMapper mapper = new ObjectMapper(); String jsonOfObject = mapper.writeValueAsString(userForSerialization); //deserialization User userGotFromDeserialization = mapper.readValue(jsonOfObject, User.class); } }