Jumat, 28 November 2014

Bagaimana Cara Serialisasi dan Deserialisasi Objek di Java

What is Serialization & Deserialization

Serialization adalah suatu proses mengubah objek menjadi byte stream, agar bisa disimpan dalam file, memori ataupun berguna dalam proses transmisi jaringan.

Sedangkan Deserialization adalah kebalikan dari proses Serialization.

Dalam proses serialization dan deserialization di Java, ada dua kelas yang sangat berperan penting yaitu :
  • kelas ObjectOutputStream.
  • kelas ObjectInputStream.
Selain itu, kelas yang mau di-serialization kan harus mengimplement interface java.io.Serializable.

Program Java Serialization

Untuk membuat program Java Serialization, hal pertama yang harus dilakukan adalah membuat kelas di Java yang mau di-serialization kan.

Di bawah ini adalah kelas Karyawan yang mau di-serialization kan.

Ingat !. Kelas yang mau di-serialisasi haru mengimplements java.io.Serializable.

Nama File : Karyawan.java

package com.nursalim.zone.java.serialization;

import java.io.Serializable;
import java.util.Date;

public class Karyawan implements Serializable {
/**
*
*/
private static final long serialVersionUID = -5800843163467281306L;
private String nama;
private String gender;
private String tempatLahir;
private Date tanggalLahir;

public Karyawan(String nama, String gender, String tempatLahir, Date tanggalLahir){
this.nama = nama;
this.gender = gender;
this.tempatLahir = tempatLahir;
this.tanggalLahir = tanggalLahir;
}

public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getTempatLahir() {
return tempatLahir;
}
public void setTempatLahir(String tempatLahir) {
this.tempatLahir = tempatLahir;
}
public Date getTanggalLahir() {
return tanggalLahir;
}
public void setTanggalLahir(Date tanggalLahir) {
this.tanggalLahir = tanggalLahir;
}

public String toString(){
StringBuffer sb = new StringBuffer();
sb.append("Karyawan");
sb.append("{");
sb.append("nama=").append(nama);
sb.append(",gender=").append(gender);
sb.append(",tempatLahir=").append(tempatLahir);
sb.append(",tanggalLahir=").append(tanggalLahir);
sb.append("}");
return "";
}

}

Langkah selanjutnya, adalah membuat kelas untuk proses mengubah objek karyawan menjadi byte stream. Anda bisa lihat contoh program di bawah ini.

Nama File : SerializationDemo.java

package com.nursalim.zone.java.serialization;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class SerializationDemo {
public static void main(String[] args) {

Karyawan karyawan = new Karyawan("Nursalim", "L", "Brebes",
new java.util.Date());

FileOutputStream fos;
try {
fos = new FileOutputStream("D:\\serialisasi\\karyawan.txt");
ObjectOutputStream oos = new ObjectOutputStream(fos);

oos.writeObject(karyawan);
oos.flush();
System.out.println("success");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}
}

Output.

Coba compile dan jalakan program SerializationDemo.java, kalau tidak error, maka akan membuat file karyawan.txt seperti gambar dibawah ini.

Serialization dan Deserialization di Java

Program Java Deserialization

Di bawah ini adalah program Java untuk men-deserialisasi file karyawan.txt menjadi objek karyawan.

Nama File : DeserializationDemo.java

package com.nursalim.zone.java.serialization;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.ObjectInputStream;

public class DeserializationDemo {
public static void main(String[] args) throws ClassNotFoundException{
ObjectInputStream in;
try {
in = new ObjectInputStream(new FileInputStream("D:\\serialisasi\\karyawan.txt"));
Karyawan karyawan=(Karyawan)in.readObject();
System.out.println(karyawan.getNama());
System.out.println(karyawan.getGender());
System.out.println(karyawan.getTempatLahir());
System.out.println(karyawan.getTanggalLahir());
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}
}

Output.

Coba anda compile dan jalankan program DeserializationDemo.java diatas, jika tidak ada error maka akan tampil output seperti gambar dibawah ini.

Serialisasi dan Deserialisasi Objek di Java


Sekian tutorial singkat tentang Bagaimana Cara Serialisasi dan Deserialisasi Objek di Java. Semoga bermanfaat & Happy Learning. :)

Kamis, 27 November 2014

Bagaimana Cara Membuat File XML Menggunakan DOM Parser

Apa Itu XML?

XML adalah salah satu jenis dokumen yang digunakan untuk pertukaran data terutama dalam aplikasi Web Service.

Ketika sebuah request dikirim oleh client/browser ke web service, maka request tersebut harus diubah menjadi XML, begitu juga sebaliknya ketika sebuah response dikirim oleh web service ke client, maka response message juga harus dalam bentuk XML.

Untuk mengolah (membuat atau membaca) sebuah dokumen XML, diperlukan sebuah XML Parser. Salah satu XML Parser yang sangat simple dan sederhana adalah menggunakan DOM Parser.

Apa itu DOM Parser?

DOM (Document Object Model) Parser adalah salah satu metode untuk memanipulasi XML. Ada banyak metode lain selain DOM Parser, yaitu SAX dan JDOM. Insya Allah, kalau ada waktu kita akan bahas lebih dalam tentang metode-metode tersebut.

Contoh Program

Di bawah ini adalah contoh sederhana program Java untuk membuat file XML Menggunakan DOM Parser.

Nama File : WriteXMLDOMParserDemo.java

package com.nursalim.zone.java.xml;

import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

public class WriteXMLDOMParserDemo {
public static void main(String[] args){
try{

// Step 1 : Membuat objek dokumen builder

DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = docBuilderFactory.newDocumentBuilder();

// Step 2 : Membuat element root
Document document = documentBuilder.newDocument();
Element rootElement = document.createElement("karyawan");
document.appendChild(rootElement);

// Step 3 : Membuat element Programmer
Element programmer = document.createElement("programmer");
rootElement.appendChild(programmer);


// Step 4 : Membuat atribut NIK buat programmer
Attr attr = document.createAttribute("nik");
attr.setValue("20081090");
programmer.setAttributeNode(attr);

// Step 5 : Membuat element-element lainnya yg dibutuhkan
// Membuat element Nama
Element nama = document.createElement("nama");
nama.appendChild(document.createTextNode("Nursalim"));
programmer.appendChild(nama);

// Membuat element Jenis Kelamin
Element gender = document.createElement("gender");
gender.appendChild(document.createTextNode("Laki-Laki"));
programmer.appendChild(gender);

// Membuat element Tempat Lahir
Element tempatLahir = document.createElement("alamat");
tempatLahir.appendChild(document.createTextNode("Brebes"));
programmer.appendChild(tempatLahir);

// Membuat elemen keahlian
Element keahlian = document.createElement("keahlian");
keahlian.appendChild(document.createTextNode("Java"));
programmer.appendChild(keahlian);

// Menulis isi atau konten ke file
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(new File("D:\\xml\\programmer.xml"));

// Jika output melalui konsole
// StreamResult result = new StreamResult(System.out);

transformer.transform(source, result);

System.out.println("File XML berhasil dibuat !");
}catch(ParserConfigurationException ex){
ex.printStackTrace();
}catch(TransformerException ex){
ex.printStackTrace();
}
}
}

Output

Coba anda jalankan program diatas, apabila tidak ada error, maka akan membuat sebuah file xml seperti gambar di bawah ini.

Membuat File XML Menggunakan DOM Parser

Membuat File XML Menggunakan DOM Parser

Sekian tutorial sederhana Bagaimana Cara Membuat File XML Menggunakan DOM Parser. Semoga bermanfaat & Happy Learning. :)

Rabu, 26 November 2014

Bagaimana Cara Instalasi Apache Tomcat 6.x di Windows

Apache Tomcat adalah salah satu web server atau servlet container yang banyak digunakan sebagai web server untuk aplikasi Java berbasis web, misalkan JSP (Java Server Pages), Servlet, JSF (Java Server Faces), dan sebagainya.



Apache Tomcat dikembangkan oleh Apache Foundation. Apache Tomcat merupakan web server yang bersifat open source.

Di bawah ini step by step cara instalasi Apache Tomcat di Windows
  1. Instalasi JDK

    Sebelum proses instalasi Apache Tomcat dilakukan, hal pertama yang harus dilakukan adalah meng-install Java atau JDK di Windows. Untuk Apache Tomcat 6.x mengharuskan untuk meng-install JDK versi 5 atau yang lebih tinggi.

    Silahkan anda baca tutorial saya tentang Langkah-Langkah Instalasi Java di Windows.

  2. Download Apache Tomcat

    Langkah kedua adalah download software Apache Tomcat 6.x di situs resminya, yaitu http://tomcat.apache.org/download-60.cgi.

    Download sesuai dengan jenis OS Windows anda (32 bit atau 64 bit). Ada 2 versi yaitu versi Installer dan versi Zip (Extract). Silahkan anda pilih sesuai dengan keinginan anda.

  3. Instalasi Apache Tomcat

    Karena ada dua jenis installer, untuk yang versi zip, Anda cukup meng-ekstract Apache Tomcat di direktori Windows anda, misalkan di C:\apache\Tomcat6. Untuk yang versi Installer, silahkan anda double click file installer (.exe). Langkah selanjutnya, anda tinggal ikuti instruksi selanjutnya.

  4. Menjalankan Apache Tomcat

    Untuk menjalankan Apache Tomcat 6.x. Caranya mudah, anda tinggal buka Command Prompt (cmd) kemudian masuk ke directori tempat instalasi Apache Tomcat, misalkan di C:\apache-tomcat-6.0.37 > bin. Kemudian ketikkan startup.bat dan tekan enter.

    C:\apache-tomcat-6.0.37\bin>startup.bat

    Untuk membuktikan apakah Apache Tomcat sudah terinstall dengan benar, silahkan anda buka browser kesayangan anda, kemudian ketikkan http://localhost:8080 pada URL toolbar. Apabila berhasil, maka akan keluar tampilan seperti gambar di bawah ini.



Sekian tutorial tentang Langkah-Langkah Instalasi Apache Tomcat 6.x di Windows. Semoga bermanfaat & Happy Learning.

Selasa, 25 November 2014

Cara Membuat Program Aplikasi Hello World Menggunakan Log4J

Tools


Tools yang digunakan untuk membuat Program Aplikasi Hello World Log4J, yaitu :
  • Editor Java (Disini saya menggunakan Eclipse)
  • Log4J Library (log4j-1.2.17.jar)

    Anda bisa mendownload libary Log4J pada situs resminya, yaitu di http://logging.apache.org/log4j/2.0/download.html.

    Setelah anda download dan ekstrak file hasil download, langkah selanjutnya adalah copy file log4j-xxx.jar ke folder lib di eclipse seperti gambar yang ada di Project Structure. Dan Jangan lupa configure build path agar file jar bisa dibaca/di import oleh program.

Project Structure

Buatlah project di Eclipse Editor, dengan struktur seperti dibawah ini.



Log4J.properties


Buatlah file konfigurasi Log4J yaitu log4j.properties di bawah src folder di Eclipse.

Nama File : log4j.properties.

# Root logger option
log4j.rootLogger=DEBUG, stdout, file

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Redirect log messages to a log file, support file rolling.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=D:\\log4j\\application.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

Program Java

Buatlah program Java untuk membuat aplikasi Hello World Log4J.

Nama File : HelloLog4JDemo.java

import org.apache.log4j.Logger;


public class HelloLog4JDemo {
final static Logger logger = Logger.getLogger(HelloLog4JDemo.class);
public static void main(String[] args){

String helloWorld = "Hello World";

if(logger.isDebugEnabled()){
logger.debug("This is debug : " + helloWorld);
}

if(logger.isInfoEnabled()){
logger.info("This is info : " + helloWorld);
}

logger.warn("This is warn : " + helloWorld);
logger.error("This is error : " + helloWorld);
logger.fatal("This is fatal : " + helloWorld);
}
}


Running


Membuat Program Hello World Log4J


Sekian tutorial singkat tentang Cara Membuat Program Aplikasi HelloWorld Menggunakan Log4J. Semoga bermanfaat & Happy Coding.

Senin, 24 November 2014

Contoh Program Integrasi Hibernate ORM + Oracle 11g Menggunakan XML Mapping

Persiapan

Sebelum m emulai membuat program Integrasi Hibernate ORM dengan Oracle 11g, ada beberapa tools yang dipersiapkan, yaitu :
  • Oracle Database 11g
  • JDK (Java Development Kit)
  • Hibernate 4.xx or Higher
  • IDE for Java (Eclipse / NetBeans)
Program yang nanti kita buat yaitu aplikasi Insert Data di Oracle 11g menggunakan Hibernate.

Langkah-Langkah


Di bawah ini adalah langkah-langkah dalam membuat aplikasi Insert Data di Oracle database menggunakan hibernate
  • Instalasi Tools yang telah dipersiapkan, meliputi : Instalasi JDK, Instalasi Oracle Database 11g, dan IDE for Java. Untuk IDE, disini kita menggunakan Eclipse
  • Tambahkan library/jar yang dibutuhkan untuk membuat aplikasi ke dalam build path Eclipse.
  • Buat table di database Oracle 11g.
  • Membuat Project Baru di Eclipse
  • Membuat Kelas Model/POJO (Mahasiswa.java) dan Hibernate Mapping File (mahasiswa.hbm.xml)
  • Membuat File Hibernate Configuration File (hibernate.cfg.xml)
  • Membuat Kelas HibernateUtil.java
  • Membuat Program CRUD (MahasiswaCRUD.java)
  • Jalankan Program yang telah dibuat
Langkah-langkah diatas, akan kita bahas lebih detail seperti dibawah ini:

Instalasi JDK, Oracle, dan Eclipse

Silahkan anda install terlebih dahulu JDK, Oracle Database 11g, dan Eclipse IDE. Pada tahapan kali ini, saya tidak menguraikan secara detail tentang instalasi ini.

Tambahkan Library/JAR

Tambahkan library-libary di bawah ini, dan masukkan ke dalam Build Path di Eclipe.
  • antlr-2.7.7.jar
  • dom4j-1.6.1.jar
  • hibernate-commons-annotations-4.0.5.Final.jar
  • hibernate-core-4.3.6.Final.jar
  • hibernate-jpa-2.1-api-1.0.0.Final.jar
  • jandex-1.1.0.Final.jar
  • javassist-3.18.1-GA.jar
  • jboss-logging-3.1.3.GA.jar
  • jboss-logging-annotations-1.2.0.Beta1.jar
  • jboss-transaction-api_1.2_spec-1.0.0.Final.jar
  • ojdbc6.jar

Membuat Table Mahasiswa

Dibawah ini adalah script table Mahasiswa.sql untuk membuat table Mahasiswa di Oracle Database.

Nama file : tbl_mahasiswa.sql

CREATE TABLE AKADEMIK.mahasiswa
(
npm VARCHAR2(10),
nama VARCHAR2(50),
alamat VARCHAR2(100),
gender CHAR(1),
tempat_lahir VARCHAR2(50),
tanggal_lahir DATE,
ipk NUMBER(3,2)
)

ALTER TABLE AKADEMIK.mahasiswa ADD (
CONSTRAINT mahasiswa_PK
PRIMARY KEY
(ipk)
ENABLE VALIDATE);

Membuat Project Baru

Buat project baru di Eclipse kesayangan anda, klik File > New > Java Project. Isi nama project misalkan "HIBERNATE".

Integrasi Hibernate dengan Oracle 11g

Membuat Kelas Mahasiswa

Buatlah kelas POJO Mahasiswa.java dan tempatkan di package com.nursalim.zone.hibernate, seperti di bawah ini

File Name : Mahasiswa.java


package com.nursalim.zone.hibernate;

import java.util.Date;

public class Mahasiswa {

private String npm;
private String nama;
private String alamat;
private String gender;
private Date tanggalLahir;
private String tempatLahir;
private double ipk;

public String getNpm() {
return npm;
}
public void setNpm(String npm) {
this.npm = npm;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Date getTanggalLahir() {
return tanggalLahir;
}
public void setTanggalLahir(Date tanggalLahir) {
this.tanggalLahir = tanggalLahir;
}
public String getTempatLahir() {
return tempatLahir;
}
public void setTempatLahir(String tempatLahir) {
this.tempatLahir = tempatLahir;
}
public double getIpk() {
return ipk;
}
public void setIpk(double ipk) {
this.ipk = ipk;
}

}

Membuat File Hibernate Mapping (Mahasiswa.hbm.xml)

Buatlah file Hibernamet Mapping (Mahasiswa.hbm.xml) seperti gambar dibawah ini

Nama file : Mahasiswa.hbm.xml


Membuat File Hibernate Configuration (hibernate.cfg.xml)

Buatlah file hibernate configuration (hibernate.cfg.xml) seperti gambar dibawah ini:

Nama File : hibernate.cfg.xml



Membuat Program Insert Data

Nama File : HibernateInsertDataDemo.java

package com.nursalim.zone.hibernate;

import org.hibernate.Session;

public class HibernateInsertDataDemo {
public static void main(String[] args){
Session session = HibernateUtil.getSessionFactory().openSession();

session.beginTransaction();
Mahasiswa dono = new Mahasiswa();
dono.setNpm("2014435701");
dono.setNama("Dono Suhendri");
dono.setGender("L");
dono.setIpk(3.75);
dono.setAlamat("Jakarta");
dono.setTanggalLahir(new java.util.Date());
dono.setTempatLahir("Bantul");

session.save(dono);
session.getTransaction().commit();
}
}

Review Project Structure

Di bawah ini adalah Review Project Structure di Eclipse.


Running Program

Coba compile dan jalankan kelas HibernateInsertDataDemo.java diatas, apabila berhasil maka akan muncul tampilan seperti dibawah ini


Query Table mahasiswa

Untuk membuktikan apakah program diatas, benar-benar berhasil dan masuk ke table mahasiswa dapat dilakukan query ke table mahasiswa, seperti gambar dibawah ini.



Sekian Tutorial singkat Contoh Program Integrasi Hibernate ORM + Oracle 11g Menggunakan XML Mapping. Semoga bermanfaat & Happy Learning.



Minggu, 23 November 2014

Contoh Program Koneksi ke Database Oracle 11g Menggunakan JDBC Driver

Pada tutorial kali ini, kita akan mencoba membuat program sederhana untuk mengakses Oracle Database 11g menggunakan JDBC (Java Data Base Connectivityy).

Tools yang digunakan pada tutorial kali ini, yaitu:
  • Eclipse Editor
  • Oracle Database 11g
  • Oracle JDBC Driver

Download Oracle JDBC Driver

Anda dapat men-download Oracle JDBC Driver (ojdbcxxx.jar) di situs resmi Oracle. Setelah di download, langkah selanjutnya adalah konfigurasi Build Path di Eclipse untuk menambahkan Driver tersebut.

Contoh Program

Di bawah ini adalah contoh program sederhana untuk koneksi ke database Oracle menggunakan JDBC.

Nama File : OracleJDBCDemo.java

package com.nursalim.zone.java.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OracleJDBCDemo {
public static void main(String[] args) {
System.out.println("****************************************************");
System.out.println(" Contoh Program Koneksi ke Oracle via JDBC");
System.out.println("****************************************************");

try {

Class.forName("oracle.jdbc.driver.OracleDriver");

} catch (ClassNotFoundException e) {

System.out.println("Oracle JDBC Drive tidak ditemukan");
e.printStackTrace();
return;

}

System.out.println("Oracle JDBC Driver sukses terdaftar");

Connection connection = null;

try {

connection = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:orcl", "akademik",
"akademik");

} catch (SQLException e) {

System.out.println("Gagal koneksi ke database Oracle");
e.printStackTrace();
return;

}

if (connection != null) {
System.out.println("Selamat, anda berhasil terhubung ke database Oracle!");
} else {
System.out.println("Gagal koneksi ke database Oracle!");
}
}
}

Output

Coba anda jalankan program diatas, kalau tidak ada error maka akan muncul tampilan sebagai berikut.



Sekian tutorial singkat Contoh Program Koneksi ke Database Oracle 11g Menggunakan JDBC Driver. Semoga bermanfat & Happy Learning :)

Menggunakan Operator Aritmetika di Java

Overview


Operator Aritmetika digunakan dalam proses perhitungan matematika di dalam program seperti penambahan, pengurangan, perkalian, dan pembagian.

Setiap bahasa pemrograman, baik itu bahasa pemrograman tingkat rendah, tingkat menengah sampai tingkat tinggi, termasuk bahasa Java menyediakan seperangkat Operator Aritmetika yang sangat membantu dalam proses perhitungan matematis.

Di bawah ini adalah table jenis-jenis operator aritmetika.
Menggunakan Operator Aritmetika di Java

Contoh Program

Di bawah ini adalah contoh penggunaan operator Aritmetika dalam program Java

Nama File : ArithmeticOperatorDemo.java

package com.nursalim.zone.java.operator;

public class ArithmeticOperatorDemo {
public static void main(String[] args) {
int a = 20;
int b = 10;
int c = 25;
int d = 25;
System.out.println("a + b = " + (a + b));
System.out.println("a - b = " + (a - b));
System.out.println("a * b = " + (a * b));
System.out.println("b / a = " + (b / a));
System.out.println("b % a = " + (b % a));
System.out.println("c % a = " + (c % a));
System.out.println("a++ = " + (a++));
System.out.println("b-- = " + (a--));
System.out.println("d++ = " + (d++));
System.out.println("++d = " + (++d));
}
}

Output :

a + b = 30
a - b = 10
a * b = 200
b / a = 0
b % a = 10
c % a = 5
a++ = 20
b-- = 21
d++ = 25
++d = 27


Sekian tutorial singkat Penggunaan Operator Aritmetika di Java. Semoga bermanfaat & Salam Happy Learning. :)