Skip to main content

Jackson – Convert JSON array string to List

1.JSON array string

[{"name":"knowledgefactory1", "salaray":1000}, {"name":"knowledgefactory2", "salaray":1200}]

2. Create an object to map the above JSON fields.
package com.knf;

public class Employee {

String name;
Double salaray;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Double getSalaray() {
return salaray;
}

public void setSalaray(Double salaray) {
this.salaray = salaray;
}

@Override
public String toString() {
return "Employee [name=" + name + ", salaray=" + salaray + "]";
}

}
3.Convert the JSON array string to a List
package com.knf;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
public class JacksonArrayExample {
public static void main(String[] args) {
ObjectMapper mapper = new ObjectMapper();
String json = "[{\"name\":\"knowledgefactory1\", \"salaray\":1000}, {\"name\":\"knowledgefactory2\", \"salaray\":1200}]";
try {
// 1. convert JSON array to Array objects
Employee[] pp1 = mapper.readValue(json, Employee[].class);
System.out.println("JSON array to Array objects...");
for (Employee person : pp1) {
System.out.println(person);
}
// 2. convert JSON array to List of objects
List<Employee> ppl2 = Arrays.asList(mapper.readValue(json, Employee[].class));
System.out.println("\nJSON array to List of objects");
ppl2.stream().forEach(x -> System.out.println(x));
// 3. alternative
List<Employee> pp3 = mapper.readValue(json, new TypeReference<List<Employee>>() {
});
System.out.println("\nAlternative...");
pp3.stream().forEach(x -> System.out.println(x));

} catch (IOException e) {
e.printStackTrace();
}

}
}

Output:

JSON array to Array objects...
Employee [name=knowledgefactory1, salaray=1000.0]
Employee [name=knowledgefactory2, salaray=1200.0]

JSON array to List of objects
Employee [name=knowledgefactory1, salaray=1000.0]
Employee [name=knowledgefactory2, salaray=1200.0]

Alternative...
Employee [name=knowledgefactory1, salaray=1000.0]
Employee [name=knowledgefactory2, salaray=1200.0]

pom.xml

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version>
</dependency>

Comments

Popular posts from this blog

Spring boot video streaming example-HTML5

Hello everyone, Today we will learn how to stream MP4 video using Spring. You can download the source code of this sample application from our GitHub repository. Download Link is provided at the end of this post.
User Interface

Project Structure


Home Controller
@Controller
public class HomeController {
 @Autowired
 private MyResourceHttpRequestHandler handler;
 private final static File MP4_FILE = new File("D:\\videofiles\\video1.mp4");
 // supports byte-range requests
 @GetMapping("/index")
 public String home() {
  return "index";
 }
 // supports byte-range requests
 @GetMapping("/byterange")
 public void byterange( HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  request.setAttribute(MyResourceHttpRequestHandler.ATTR_FILE, MP4_FILE);
  handler.handleRequest(request, response);
 }}
Spring Boot 
@SpringBootApplication
@ComponentScan({ "com" })
public class KnowledgefactorydemoApplication {
 public static vo…

DataTable-Pagination example with Spring boot,jQuery and ajax free download

This article shows you DataTable-Pagination example with Spring boot, jQuery and ajax. 

Following technologies stack being used:
Spring Boot 2.1.1.RELEASESpring 5.1.3.RELEASE Maven 3DatatablejQueryFree Markerjavascriptajax Project Structure
View(index.ftl) <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Knf|Pagination-Datatables</title> <!-- Tell the browser to be responsive to screen width --> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="../../css/jquery.dataTables.min.css"> <body>  <section class="content">   <div class="container-fluid">    <table id="example" class="display" style="width: 100%">     <thead>      <tr>       <th>First name</th>       <th>La…

9 Best Job Posting Sites for Employee 2020-2022

One of the most common ways today’s job seekers uncover employment opportunities are by using online sources. There are hundreds of job boards, both generic and niche, as well as aggregators, social media channels, networking groups, and staffing company websites to choose from. The good news is they provide plenty of listings. The bad news is you can be easily overwhelmed by so many options. Here, knowledge factory offers 9 of what is generally considered the best job search websites around. There are many others, of course, but this list of best job search websites should give you a good starting point for your next job hunt: 1. LinkedIn
This top networking site allows you to find jobs through your extended network. User profiles serve as resumes. You can easily share career-related content and solicit or supply recommendations. Additionally, you can join groups, participate in conversations, and follow companies you find interesting and relevant to your job search. Premium pai…