Buku Membuat Aplikasi Chat Menggunakan Java


Buku Membuat Aplikasi Chat Menggunakan Java

Buku Membuat Aplikasi Chat Menggunakan Java

Buku Membuat Aplikasi Chat Menggunakan Java berisi cara membuat aplikasi chat menggunakan framework Netty. Dibuku ini dibahas secara lengkap dan detail dari awal sampai testing aplikasi chating nya. Baca lebih lanjut

Programming Style Guidelines


Programming Style Guidelines

Programming Style Guidelines

Setiap bahasa pemrograman biasanya punya gaya masing-masing ketika menulis code. Gaya ini dimaksudkan agar kode yang dibuat itu dapat mudah dibaca oleh developer lain. Dengan adanya gaya standard, diharapkan tiap developer tidak seenak jidatnya membuat kode dengan gaya masing-masing.

Ibarat sebuah grup band, kalo mau beraliran PUNK, ya semua personilnya gayanya PUNK, jangan sampai ada didalamnya yang gaya BOY BAND :), bisa acak-acakan tuh nanti band nya.

Berikut adalah beberapa gaya untuk tiap bahasa pemrograman. Baca lebih lanjut

Membuat Halaman Wizard Sederhana Menggunakan JSF (Java Server Faces) dan CDI (Context & Dependency Injection)


Java Technology

Java Technology

Bismillahirrahmanirrahim

Proses wizard adalah beberapa halaman yang digabungkan untuk membentuk satu alur proses, misal. Jika kita akan memasukkan data yang sangat banyak, biasanya kita memisahkan data tersebut menjadi beberapa bagian. Contoh saat kita akan memasukkan biodata pegawai, kita akan memasukkan data identitasnya terlebih dahulu, setelah itu memasukkan data akademik, data pengalaman kerja, dan lain-lain. Dari pada kita memasukkan datanya ke dalam satu halaman, lebih baik jika kita membaginya menjadi beberapa halaman.

Dalam proses wizard, artinya data pada halaman pertama harus dapat diakses pada halaman kedua dan halaman selanjutnya. Dalam web, biasanya data tersebut disimpan dalam sebuah HttpSession. Namun jika kita menggunakan HttpSession, maka data akan selalu sama dalam browser yang kita gunakan. Jika kita merubah data wizard di satu tab, maka data pada tab yang lain akan ikut berubah. Hal ini membuat kita tidak dapat menambah data secara sekaligus di beberapa tab.

Dalam kasus ini, kita dapat menggunakan @ConversationScope milik Context & Dependency Injection (CDI) yang tergabung dalam teknologi JEE 6. Untuk menggunakan CDI, kita hanya dapat menggunakannya pada Enterprise Application Server seperti Glassfish dan JBoss. Kita tidak dapat menggunakannya Servlet Container seperti Tomcat dan Jetty.

Untuk membuat sebuah ManageBean menggunakan @ConversationScope kita hanya perlu menambahkan @ConversationScope dalam kelas ManageBean yang kita gunakan, dan setelah itu menambahkan sebuah variabel Conversation menggunakan annotation @Inject. Baca lebih lanjut

Java User Group Bandung Mengadakan Java Meetup Bertemakan Android (15 Oktober 2010)


 

Java Duke

Java Duke

Setelah lama dinanti-nanti, JUG Bandung kembali mengadakan Java User MeetUp. Di MeetUp kali ini kita akan membahas mengenai sistem operasi mobile “Android” yang hingga kini gadgetnya sudah bertebaran dan makin populer bagi para pengguna. Tentu saja kepopuleran ini adalah potensi sangat besar yang tidak boleh dilewatkan oleh pengembang.

 

Dengan format yang berbeda dengan sebelumnya, MeetUp kali ini akan diisi oleh tiga perusahaan startup yang sedang mengembangkan produk berbasis Android.

Selain itu juga akan ada presentasi mengenai OSS-FEST, sebuah acara festival dan kompetisi aplikasi mobile berbasis Android. (ossfest-indonesia.web.id)

Acara ini terbuka bagi siapa saja dan tidak dipungut biaya. Acara diadakan pada
Hari : Jumat, 15 Oktober 2010
Waktu : 18.00 s.d. 20.00
Tempat: Ruang 7602, Gedung Labtek Benny Subianto lt 3 ITB (Jalan Ganesha no 10)

Silahkan konfirmasi kehadiran disini :
http://www.facebook.com/event.php?eid=133701663346591

Meload Teks dari File


Meload teks dari file di Java tidaklah sesederhana pada bahasa pemrograman yang lain. Contohnya di C# kita bisa melakukan seperti jika akan meload teks dari file :

string s = System.IO.File.ReadAllText( path );

Tapi tidak dengan Java, butuh banyak kode yang harus kita buat jika meload data di Java

File file = new File("/home/echo/Desktop/contoh.txt");

FileReader fileReader = null;
BufferedReader reader = null;

try {
    fileReader = new FileReader(file);
    reader = new BufferedReader(fileReader);

    StringBuilder builder = new StringBuilder();
    String temp = null;

    while ((temp = reader.readLine()) != null) {
        builder.append(temp);
        builder.append("\n");
    }

    // hasil teks
    String text = builder.toString();

} catch (IOException e) {
} finally {
    if (fileReader != null) {
        try {
            fileReader.close();
        } catch (IOException ex) {
        }
    }
    if (reader != null) {
        try {
            reader.close();
        } catch (IOException ex) {
        }
    }
}

Lantas, kenapa tidak kita buat saja sebuah kelas utilitas untuk melakukan load teks dari file, sehingga jika kita akan meload teks dari file, akan lebih mudah dari pada kode diatas. Contoh sekarang saya membuat kelas StringLoader yang berisikan utilitas-utilitas untuk meload teks dari file. Baca lebih lanjut

Memfilter Collection


Pernah memfilter sebuah collection ? Misal kita punya collection yang berisikan data Mahasiswa, setelah itu kita mau mengambil seluruh mahasiswa yang berjenis kelamin Perempuan. Jika menggunakan database, sangat mudah, tinggal SELECT * FROM MAHASISWA WHERE JENIS_KELAMIN = 'PEREMPUAN' Tapi bagaimana jika dalam collection?

Gampang aja, tinggal telusuri collection tersebut satu persatu menggunakan perulangan, setelah itu cek setiap recordnya, jika berjenis kelamin perempuan, maka ambil data itu 😀 Gitu aja kok repot….

Yup, memang, saat ini kita mau menggunakan cara yang merepotkan 😀

Pertama kita buat sebuah interface Filter, interface ini nanti digunakan untuk melakukan pengecekah apakah data diterima atau tidak :


package khannedy.blogging.collection;

public interface Filter<T> {

	boolean include(T data);

}

Setelah itu kita buat sebuah kelas CollectionUtil, kelas ini yang nanti digunakan sebagai kelas utilitas yang melakukan proses filtering menggunakan interface Filter sebelumnya yang telah dibuat.


package khannedy.blogging.collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

public class CollectionUtil {

	public static <T> Collection<T> filter(Collection<T> source, Filter<T> filter) {
		List<T> list = new ArrayList<T>();

		for (T data : source) {
			if (filter.include(data)) {
				list.add(data);
			}
		}

		return list;
	}

}

Dengan demikian, sekarang jika kita akan memfilter data sebuah Collection, tinggal menggunakan perintah :


List<Mahasiswa> list = new ArrayList<Mahasiswa>();

Collection<Mahasiswa> hasil = CollectionUtil.<Mahasiswa> filter(list, new Filter<Mahasiswa>() {

	@Override
	public boolean include(Mahasiswa data) {
		if (data.getJenisKelamin().equals("Perempuan")) {
			return true;
		} else {
			return false;
		}
	}
});

Haha, kalo ada yang ribet kenapa mesti yang mudah? Silahkan anda pikirkan sendiri kenapa saya menggunakan cara coding seperti ini 😀

Kenapa Jangan Melakukan Proses Validasi Input JTextField Menggunakan KeyListener


Java Programming

Java Programming

Peralatan yang diperlukan :

  1. Java Development Kit 1.6
  2. Integrated Development Environtment (NetBeans, Eclipse, dll)

Jika teman-temen lihat postin ini dan ini, disana saya melakukan proses validasi menggunakan PlainDocument yang dimanipulasi saat proses insertString. Tapi ada temen saya yang meyarankan menggunakan KeyListener, katanya lebih gampang 😀

Tapi ternyata menggunakan KeyListener gak jalan di LinuxMint yang saya gunakan dan bisa di break menggunakan Copy Paste 😀 Mari kita bahas… Baca lebih lanjut

Menyimpan Berkas BLOB ke Database Menggunakan Java Database Connectivity


Java Programming

Java Programming

Tadi pagi ada yang SMS, gimana cara menyimpan data berkas ke database dengan tipe kolom BLOB. Hal ini mungkin berguna, saat misal kita akan menyimpan gambar photo karyawan di database, jadi photonya tidak disimpan di hardisk, tapi langsung di database, atau juga menyimpan data dokumen word atau excel langsung ke database. Caranya cukup mudah 😀 Baca lebih lanjut