Proses Encoding Dan Decoding JSON Menggunakan JSON Simple Di Java

Tutorial kali ini, kita akan membahas tentang proses Encoding dan Decoding JSON (Javascript Object Notation) di Java menggunakan JSON Simple.

Ada beberapa tools yang harus Anda download terlebih dahulu yaitu,

  • Program Java Editor, disini saya menggunakan Eclipse sebagai Java Editor.
  • Program atau library JSON Simple, Silakan Anda download dan tambahkan json-simple.1.1.1.jar pada classpath di Eclipse.

Baca juga : Cara Membuat Project Java Di Eclipse


Proses Encoding



Yang dimaksud dengan proses encoding adalah proses untuk mengubah sebuah Java Object menjadi JSON. Untuk melakukan proses encoding, Anda dapat menggunakan kelas JSONObject untuk membuat JSON.

Agar lebih jelasnya, Anda dapat lihat contoh sederhana di bawah ini:

import java.math.BigDecimal;
import java.util.Date;

import org.json.simple.JSONObject;

public class EncodeJSONExample {
 
 public static void main(String[] args){
  JSONObject obj = new JSONObject();
  obj.put("nama","Nursalim");
  obj.put("jenis_kelamin", "Laki-Laki");
  obj.put("alamat", "Jakarta");
  obj.put("tanggal_lahir", new Date());
  obj.put("gaji", new BigDecimal(1000000));
  
  System.out.println(obj);
 }
 
}

Coba anda compile dan jalankan program diatas, maka akan menampilkan output seperti berikut ini:

{"tanggal_lahir":Sun Jun 12 06:02:25 ICT 2016,"gaji":1000000,"jenis_kelamin":"Laki-Laki","nama":"Nursalim","alamat":"Jakarta"}

Dari output diatas, terlihat bahwa tidak ada proses pengurutan tidak seperti object yang dimasukkan. Untuk melakukan proses pengurutan, Anda dapat memodifikasi program diatas dengan mengganti kelas JSONObject dengan kelas java.util.LinkedHashMap. Dan menampilkan outputnya menggunakan method JSONValue.toJSONString(map) yang memiliki parameter berupa map.

Perhatikan contoh berikut:

import java.math.BigDecimal;
import java.util.Date;
import java.util.LinkedHashMap;

import org.json.simple.JSONObject;
import org.json.simple.JSONValue;

public class EncodeJSONExample {
	
	public static void main(String[] args){
		JSONObject obj = new JSONObject();
		obj.put("nama","Nursalim");
		obj.put("jenis_kelamin", "Laki-Laki");
		obj.put("alamat", "Jakarta");
		obj.put("tanggal_lahir", new Date());
		obj.put("gaji", new BigDecimal(1000000));
		
		System.out.println("Tanpa pengurutan....");
		System.out.println(obj);
		
		LinkedHashMap map = new LinkedHashMap();
		map.put("nama","Nursalim");
		map.put("jenis_kelamin", "Laki-Laki");
		map.put("alamat", "Jakarta");
		map.put("tanggal_lahir", new Date());
		map.put("gaji", new BigDecimal(1000000));
		
		
		System.out.println("\n\nDengan pengurutan ....");
		System.out.println(JSONValue.toJSONString(map));
	}
	
}

Program diatas akan menampilkan output sebagai berikut:

Tanpa pengurutan....
{"tanggal_lahir":Sun Jun 12 10:45:31 ICT 2016,"gaji":1000000,"jenis_kelamin":"Laki-Laki","nama":"Nursalim","alamat":"Jakarta"}


Dengan pengurutan ....
{"nama":"Nursalim","jenis_kelamin":"Laki-Laki","alamat":"Jakarta","tanggal_lahir":Sun Jun 12 10:45:31 ICT 2016,"gaji":1000000}





Share this

Related Posts

First