library format json di java

Post on 05-Jul-2015

56 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

library format JSON di java

TRANSCRIPT

JSON untuk pertukaran data

Oleh: mulkan.ms@gmail.com

www.softscients.web.id

Membuat pertukaran data yang efektif, kita dapat menggunakan JSON (dilafalkan

"Jason"), singkatan dari JavaScript Object Notation (bahasa Indonesia: notasi objek

JavaScript), adalah suatu format ringkas pertukaran data komputer. Formatnya

berbasis teks dan terbaca-manusia serta digunakan untuk merepresentasikan

struktur data sederhana dan larik asosiatif (disebut objek).

Misalkan ada transaksi berikut

Data tersebut bisa saja kita menggunakan konsep POJO di java yaitu Plain Old Java

Object yaitu class yang berisi set() dan get(), akan tetapi jika menggunakan 2

bahasa yang berbeda untuk membangun sebuah aplikasi, maka konsep POJO akan

sulit karena tidak fleksible, oleh karena itu data transaksi diatas dapat diubah

kedalam format yang terstruktur seperti XML, tapi kali ini kita akan mengubah nya

kedalam format JSON, silahkan ke http://www.jsoneditoronline.org/ untuk

mencoba secara online.

Sangat mudah bukan??

Yaitu dengan mengubah menjadi berikut

{"transaksi": [ { "no_transaksi":2344 }, {"no":1, "barang":"snack taro 3", "harga":4300, "jumlah":1, "total":4300 }, {"no":2, "barang":"richoco wafer coklat", "harga":1200, "jumlah":2, "total":2400 }, { "total" : 6700 } ] }

Itulah format JSON

Library di java yang menyediakan JSON sangat banyak, salah satu nya adalah

https://code.google.com/p/json-simple/

import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.Set; import org.json.simple.JSONObject; /** * * @author www.softscients.web.id */ public class DemoJson { /** * @param args the command line arguments */ public static void main(String[] args) { HashMap <String,String> barang = new HashMap <>(); barang.put("no","1"); barang.put("nama_barang","snack taro"); barang.put("harga","4300"); barang.put("jumlah","1"); barang.put("total","4300"); HashMap <String,String>barang2 = new <String,String>HashMap(); barang2.put("no","2"); barang2.put("nama_barang","richoco"); barang2.put("harga","1200"); barang2.put("jumlah","2"); barang2.put("total","2400");

ArrayList items = new ArrayList(); items.add(barang); items.add(barang2); JSONObject obj=new JSONObject(); obj.put("no_transaksi",new Integer(235)); obj.put("items",items); obj.put("total",6700); System.out.println("encoding format JSON"); System.out.println(obj.toString()); spliter( obj); } public static void spliter(JSONObject obj) { System.out.println("decoding format JSON"); Object no_transaksi = obj.get("no_transaksi").toString(); System.out.println("no transaksi "+no_transaksi); ArrayList items = (ArrayList) obj.get("items"); Iterator iter = items.iterator(); while(iter.hasNext()){ HashMap map = (HashMap) iter.next(); Set set = map.entrySet(); for(int i=0;i<set.size();i++) { String [] str = (set.toArray()[i].toString().split("=")); System.out.print(str[0]+" => "+str[1]+"\t"); } System.out.println(""); } System.out.println("total "+obj.get("total").toString()); } }

Menghasilkan

encoding format JSON {"total":6700,"no_transaksi":235,"items":[{"total":"4300","nama_barang":"snack taro","no":"1","jumlah":"1","harga":"4300"},{"total":"2400","nama_barang":"richoco","no":"2","jumlah":"2","harga":"1200"}]} decoding format JSON no transaksi 235 total => 4300 nama_barang => snack taro no => 1 jumlah => 1 harga => 4300 total => 2400 nama_barang => richoco no => 2 jumlah => 2 harga =>

1200 total 6700

#Referensi HashMap, ArrayList:

http://www.tutorialspoint.com/java/java_mapentry_interface.htm

http://examples.javacodegeeks.com/java-basics/java-map-example/

top related