Showing posts with label convert. Show all posts
Showing posts with label convert. Show all posts

Monday, 29 March 2021

Javax.json: Get an object from json string

Step 1: Get JsonObject from json string.

JsonReader reader = Json.createReader(new StringReader(jsonString));
JsonObject jsonObject = reader.readObject();

 

Step 2: Populate java object from JsonObject.

int id = jsonObject.getInt("id");
String firstName = jsonObject.getString("firstName");
String lastName = jsonObject.getString("lastName");
		
String birthDate = jsonObject.getString("dateOfBirth");
DateFormat dateFormat = new SimpleDateFormat("DD/MM/YYYY");
Date dateOfBirth = dateFormat.parse(birthDate);
		
Employee emp = new Employee(id, firstName, lastName, dateOfBirth);

 

Find the below working application.

 

ObjectFromString.java

package com.sample.app;

import java.io.StringReader;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonReader;

import com.sample.app.model.Employee;

public class ObjectFromString {

	public static void main(String[] args) throws ParseException {
		String jsonString = "{\"firstName\":\"Ram\",\"lastName\":\"Gurram\",\"id\":32,\"dateOfBirth\":\"10/01/1985\"}";
		
		JsonReader reader = Json.createReader(new StringReader(jsonString));
		JsonObject jsonObject = reader.readObject();
		
		int id = jsonObject.getInt("id");
		String firstName = jsonObject.getString("firstName");
		String lastName = jsonObject.getString("lastName");
		
		String birthDate = jsonObject.getString("dateOfBirth");
		DateFormat dateFormat = new SimpleDateFormat("DD/MM/YYYY");
		Date dateOfBirth = dateFormat.parse(birthDate);
		
		Employee emp = new Employee(id, firstName, lastName, dateOfBirth);
		
		System.out.println(emp);
	}
}

 

Output

Employee [id=32, firstName=Ram, lastName=Gurram, dateOfBirth=Sun Dec 30 00:00:00 IST 1984]

 

 

 

 

Previous                                                    Next                                                    Home

Javax.json: Build JsonObject from string

Step 1: Create JsonReader instance from json string.

JsonReader reader = Json.createReader(new StringReader(jsonString));

 

Step 2: Get JsonObject using readObject method.

JsonObject jsonObject = reader.readObject();

 

Find the below working application.

 

jsonToJsonObjectDemo.java

package com.sample.app;

import java.io.StringReader;

import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonReader;

public class jsonToJsonObjectDemo {
	
	public static void main(String[] args) {
		String jsonString = "\n" + 
				"{\n" + 
				"    \"firstName\": \"Ram\",\n" + 
				"    \"lastName\": \"Gurram\",\n" + 
				"    \"id\": 32,\n" + 
				"    \"male\": false,\n" + 
				"    \"dateOfBirth\": \"10/01/1985\"\n" + 
				"}\n" + 
				"";
		
		JsonReader reader = Json.createReader(new StringReader(jsonString));
		
		JsonObject jsonObject = reader.readObject();
		
		System.out.println("firstName : " + jsonObject.getString("firstName"));
		System.out.println("lastName : " + jsonObject.getString("lastName"));
		System.out.println("id : " + jsonObject.getInt("id"));
		System.out.println("male : " + jsonObject.getBoolean("male"));
		System.out.println("dateOfBirth : " + jsonObject.getString("dateOfBirth"));
	}

}

 

Output

firstName : Ram
lastName : Gurram
id : 32
male : false
dateOfBirth : 10/01/1985

 

 

 

  

Previous                                                    Next                                                    Home

Javax.json: Convert object to json string

Step 1: Construct JsonObjectBuilder from an object properties.

JsonObjectBuilder objectBuilder = Json.createObjectBuilder()
.add("firstName", emp.getFirstName())
.add("lastName", emp.getLastName())
.add("id", emp.getId())
.add("birthdate", new SimpleDateFormat("DD/MM/YYYY").format(emp.getDateOfBirth()));

 

Step 2: Get JsonObject instance from JsonObjectBuilder.

JsonObject jsonObject = objectBuilder.build();

 

Step 3: Call toString() method on JsonObject.

 

Find the below working application.

 

Employee.java

 

package com.sample.app.model;

import java.util.Date;

public class Employee {

	private int id;
	private String firstName;
	private String lastName;
	private Date dateOfBirth;

	public Employee(int id, String firstName, String lastName, Date dateOfBirth) {
		this.id = id;
		this.firstName = firstName;
		this.lastName = lastName;
		this.dateOfBirth = dateOfBirth;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getFirstName() {
		return firstName;
	}

	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}

	public String getLastName() {
		return lastName;
	}

	public void setLastName(String lastName) {
		this.lastName = lastName;
	}

	public Date getDateOfBirth() {
		return dateOfBirth;
	}

	public void setDateOfBirth(Date dateOfBirth) {
		this.dateOfBirth = dateOfBirth;
	}

}

 

ObjectToJsonDemo.java

package com.sample.app;

import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;

import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;

import com.sample.app.model.Employee;

public class ObjectToJsonDemo {
	private static String getJson(Employee emp) {
		if (emp == null) {
			return "";
		}

		JsonObjectBuilder objectBuilder = Json.createObjectBuilder()
				.add("firstName", emp.getFirstName())
				.add("lastName", emp.getLastName())
				.add("id", emp.getId())
				.add("birthdate", new SimpleDateFormat("DD/MM/YYYY").format(emp.getDateOfBirth()));

		JsonObject jsonObject = objectBuilder.build();

		return jsonObject.toString();
	}

	public static void main(String args[]) {
		LocalDate dateOfBirth = LocalDate.of(1985, 1, 10);
		Date date = Date.from(dateOfBirth.atStartOfDay(ZoneId.systemDefault()).toInstant());

		Employee emp1 = new Employee(32, "Ram", "Gurram", date);

		System.out.println(getJson(emp1));
	}

}

Output

{"firstName":"Ram","lastName":"Gurram","id":32,"birthdate":"10/01/1985"}




 

 

 

 

Previous                                                    Next                                                    Home

Javax.json: Convert json string to JsonObject

Step 1: Get the instance of JsonReader from json string.

JsonReader jsonReader = Json.createReader(new StringReader(jsonStr));

 

Step 2: Get JsonObject by calling ‘readObject’ method on JsonReader instance.

JsonObject jsonObject = jsonReader.readObject();

 

Find the below working application.

 

StringToJsonObjectDemo.java

package com.sample.app;

import java.io.StringReader;

import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonReader;

public class StringToJsonObjectDemo {
	public static void main(String[] args) {
		String jsonStr = "{\"firstName\":\"Ram\",\"lastName\":\"Gurram\",\"id\":32,\"male\":false,\"dateOfBirth\":\"10/01/1985\"}\n";

		JsonReader jsonReader = Json.createReader(new StringReader(jsonStr));

		JsonObject jsonObject = jsonReader.readObject();
		System.out.println(jsonObject);
	}
}

Output

{"firstName":"Ram","lastName":"Gurram","id":32,"male":false,"dateOfBirth":"10/01/1985"}



 

  

Previous                                                    Next                                                    Home

Wednesday, 29 April 2020

Convert CharSequence to String

Approach 1 : Using toString() method.
charSequence.toString()

Approach 2: Using String.valueOf()
String.valueOf(charSequence);

Approach 3: Using StringBuilder.
StringBuilder builder = new StringBuilder();
String result = builder.append(charSequence).toString();

Find the below working application.

App.java
package com.sample.app;

public class App {

 private static String getString_approach1(CharSequence charSequence) {
  if (charSequence == null) {
   return null;
  }
  return charSequence.toString();
 }

 private static String getString_approach2(CharSequence charSequence) {
  if (charSequence == null) {
   return null;
  }
  return String.valueOf(charSequence);
 }

 private static String getString_approach3(CharSequence charSequence) {

  if (charSequence == null) {
   return null;
  }

  StringBuilder builder = new StringBuilder();
  String result = builder.append(charSequence).toString();
  return result;
 }

 public static void main(String args[]) {
  CharSequence charSequence = "Hello World";

  String str1 = getString_approach1(charSequence);
  String str2 = getString_approach2(charSequence);
  String str3 = getString_approach3(charSequence);

  System.out.println("str1 : " + str1);
  System.out.println("str2 : " + str2);
  System.out.println("str3 : " + str3);
 }

}

Output
str1 : Hello World
str2 : Hello World
str3 : Hello World



You may like

Saturday, 4 January 2020

How to convert float[] to List in Java?

By traversing to the elements of array you can convert float[] to List<Float>.
public static List<Float> getBoxedList(float[] arr) {
 if (arr == null)
  return null;

 List<Float> result = new ArrayList<>();

 for (float i : arr) {
  result.add(i);

 }
 return result;
}

App.java
package com.sample.app;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class App {

 private static void printElements(List<Float> arr) {
  for (float i : arr) {
   System.out.print(i + " ");
  }
  System.out.println();
 }

 public static List<Float> getBoxedList(float[] arr) {
  if (arr == null)
   return null;

  List<Float> result = new ArrayList<>();

  for (float i : arr) {
   result.add(i);

  }
  return result;
 }

 public static void main(String args[]) throws IOException {
  float[] arr = { 1.1f, 3.3f, 5.5f, 7, 2, 4, 6, 8, 10 };

  List<Float> result1 = getBoxedList(arr);
  printElements(result1);

 }
}

Output
1.1 3.3 5.5 7.0 2.0 4.0 6.0 8.0 10.0    

You may like