📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
Table of contents
- Using Jackson API for List Serialization
- Using Jackson API for Set Serialization
- Using Jackson API for Map Serialization
- Using Jackson API for List Deserialization
- Using Jackson API for Set Deserialization
- Using Jackson API for Map Deserialization
Dependencies
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version>
</dependency>
- jackson-annotations-2.9.8.jar
- jackson-core-2.9.8.jar
- jackson-databind-2.9.8.jar
1. Using Jackson API for List Serialization
JacksonListToJson
package net.javaguides.jackson;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
/**
* Using Jackson API for list serialization and deserialization
* @author ramesh fadatare
*
*/
public class JacksonListToJson {
public static void main(String[] args) throws JsonProcessingException {
// Create ObjectMapper object.
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
List < String > progLangs = new ArrayList < > ();
progLangs.add("C");
progLangs.add("C++");
progLangs.add("Java");
progLangs.add("Java EE");
progLangs.add("Python");
progLangs.add("Scala");
progLangs.add("JavaScript");
// Serialize Object to JSON.
String json = mapper.writeValueAsString(progLangs);
// Print json
System.out.println(json);
}
}
[ "C", "C++", "Java", "Java EE", "Python", "Scala", "JavaScript" ]
2. Using Jackson API for Set Serialization
JacksonSetToJson.java
package net.javaguides.jackson;
import java.util.HashSet;
import java.util.Set;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class JacksonSetToJson {
public static void main(String[] args) throws JsonProcessingException {
// Create ObjectMapper object.
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
Set < String > progLangs = new HashSet < > ();
progLangs.add("C");
progLangs.add("C++");
progLangs.add("Java");
progLangs.add("Java EE");
progLangs.add("Python");
progLangs.add("Scala");
progLangs.add("JavaScript");
// Serialize Object to JSON.
String json = mapper.writeValueAsString(progLangs);
// Print json
System.out.println(json);
}
}
[ "Java EE", "Java", "C++", "C", "Scala", "JavaScript", "Python" ]
3. Using Jackson API for Map Serialization
JacksonMapToJson.java
package net.javaguides.jackson;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class JacksonMapToJson {
public static void main(String[] args) throws JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
Map < String, Integer > days = new HashMap < > ();
days.put("MON", Calendar.MONDAY);
days.put("TUE", Calendar.TUESDAY);
days.put("WED", Calendar.WEDNESDAY);
days.put("THU", Calendar.THURSDAY);
days.put("FRI", Calendar.FRIDAY);
days.put("SAT", Calendar.SATURDAY);
days.put("SUN", Calendar.SUNDAY);
String json = mapper.writeValueAsString(days);
System.out.println(json);
}
}
{
"THU" : 5,
"TUE" : 3,
"WED" : 4,
"SAT" : 7,
"FRI" : 6,
"MON" : 2,
"SUN" : 1
}
4. Using Jackson API for List Deserialization
JacksonJsonToList.java
package net.javaguides.jackson;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class JacksonJsonToList {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws JsonParseException, JsonMappingException, IOException {
// Create ObjectMapper object.
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json = "[ \"C\", \"C++\", \"Java\", \"Java EE\", \"Python\", \"Scala\", \"JavaScript\" ]";
List < String > progLangs = new ArrayList < > ();
progLangs = mapper.readValue(json, List.class);
for (Iterator < String > iterator = progLangs.iterator(); iterator.hasNext();) {
String progLang = (String) iterator.next();
System.out.println(progLang);
}
}
}
C
C++
Java
Java EE
Python
Scala
JavaScript
5. Using Jackson API for Set Deserialization
JacksonJsonToSet.java
package net.javaguides.jackson;
import java.io.IOException;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class JacksonJsonToSet {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws JsonParseException, JsonMappingException, IOException {
// Create ObjectMapper object.
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json = "[ \"C\", \"C++\", \"Java\", \"Java EE\", \"Python\", \"Scala\", \"JavaScript\" ]";
Set < String > progLangs = new HashSet < > ();
progLangs = mapper.readValue(json, Set.class);
for (Iterator < String > iterator = progLangs.iterator(); iterator.hasNext();) {
String progLang = (String) iterator.next();
System.out.println(progLang);
}
}
}
Java EE
Java
C++
C
Scala
JavaScript
Python
6. Using Jackson API for Map Deserialization
JacksonJsonToMap.java
package net.javaguides.jackson;
import java.io.IOException;
import java.util.Map;
import java.util.Map.Entry;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class JacksonJsonToMap {
public static void main(String[] args) throws IOException {
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json = "{" +
" \"THU\" : 5," +
" \"TUE\" : 3," +
" \"WED\" : 4," +
" \"SAT\" : 7," +
" \"FRI\" : 6," +
" \"MON\" : 2," +
" \"SUN\" : 1" +
"}";
@SuppressWarnings("unchecked")
Map < String, Integer > days = mapper.readValue(json, Map.class);
for (Entry < String, Integer > day: days.entrySet()) {
System.out.println(day.getKey() + "=" + day.getValue());
}
}
}
THU=5
TUE=3
WED=4
SAT=7
FRI=6
MON=2
SUN=1
Related Articles
- Change Field Name in JSON using Jackson (popular)
Comments
Post a Comment
Leave Comment