Posted on 09.50

Mempercantik Java dengan Swing Make Over | Panel Gambar dan Panel Gradien

Ada beberapa manipulasi Swing yang bisa kita lakukan agar tampilan aplikasi desktop kita lebih menarik. Salah satu contoh komponen Swing adalah Panel. Disini kita akan belajar apa-apa saja yang bisa kita lakukan pada sebuah Panel. Jadi tidak hanya sebatas tampilan default saja yang kita mengerti pada sebuah panel. Seperti tampilan warna granite yang tidak menarik, bentuk kotak dan tampilan yang itu-itu saja .
Nah, sekarang apa saja yang bisa kita lakukan terhadap panel ini?? Memberikan gambar pada panel ?? Memberikan effect gradient baik 2 warna, 3 warna, ataupun 4 warna ?? Membuat tampilan panel kita berukuran tetap dan tidak berubah-ubah ?? Tentu itu semua bisa kita lakukan . Oke, mari kita mulai dengan memberikan gambar pada panel. Hmm, kita coba dengan membuat interface sebagai berikut :
Nah, pada frame tersebut, kita hanya menggunakan satu panel, dimana panel tersebut kita letakkan sebuah gambar. Untuk cara membuat nya adalah sebagai berikut :
1. Buat project nya terlebih dahulu
2. Agar pengelompokannya enak, kita buat 2 package untuk menyimpan gambar dan panel2 yang kita gunakan. Misal package gambar dan widget.


3. Sekarang buat PanelGambar.java di package widget.
4. Dan copy paste gambar Tentang.jpg ke package gambar.





5. Pada PanelGambar.java, kalian bisa meng-copypaste source code ini langsung.
package pelatihanitcke3.widget;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
public class PanelGambar extends JPanel {
Image img;
public PanelGambar() {
img = new
ImageIcon(getClass().getResource("/pelatihanitcke3/gambar/Tentang.jpg")).getImage();
}
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D gd = (Graphics2D) g.create();
gd.drawImage(img, 0, 0, getWidth(), getHeight(), this);
gd.dispose();
}
}

Untuk algoritma nya, yaitu pertama kita mengambil gambar dengan dengan class ImageIcon dan kita masukkan value nya ke class Image. Kemudian kita inisialisasi methode paintComponet dimana untuk memanggil methode drawImage, kita harus membuat objek terlebih dahulu dari class Graphics2D yang di inisialisasi dari methode create() pada class Graphics. Nah, objek dari class Image yang berisi gambar yang kita panggil, kita letakkan di parameter methode drawImage seperti diatas, dan kita set ukurannya agar menyesuaikan dengan menggunakan memanggilnya dari methode getWidth() dan methode getHeight(). Terakhir, panggil methode dispose() nya.
Setelah itu, compile dulu PanelGambar.java, kemudian klik tombol Clean and Build Setelah build succesfull, langkah selanjutnya adalah tinggal memanggilnya ke Frame. Pada langkah ini tidak ada ketentuan khusus, kalian bisa memanggilnya di Frame buatan sendiri, atau Frame Drag and Drop yang disediakan Netbeans. Untuk Frame Drag and Drop, kalian tinggal menge-drag-nya dari package widget.
Nah, yang tadi kita sudah belajar bagaimana kita memasukkan gambar pada panel. Sekarang bagaimana caranya kita membuat Panel dengan effect Gradient seperti berikut :



Yaitu langkah-langkahnya sebagai berikut :
1. Buat PanelGradient.java di package widget


2. Masukkan source code berikut ke PanelGradient.java.
package pelatihanitcke3.widget;

import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Paint;
import javax.swing.JPanel;

public class PanelGradient extends JPanel {

public PanelGradient() {
setOpaque(false);
}

@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D gd = (Graphics2D) g;
GradientPaint gp = new GradientPaint(0, 0, Color.green, 0, getHeight(),
Color.black);
Paint p = gd.getPaint();
gd.setPaint(gp);
gd.fillRect(0, 0, getWidth(), getHeight());
gd.setPaint(p);
}
}

Untuk algoritmanya, panggil methode setOpaque pada konstruktor, kemudian beri nilai false. Panggil methode paintComponent, kemudian inisialisasi dengan memanggil class GradientPaint dengan parameter konstruktornya yang dapat diset letak pewarnaan dan ketentuan warnanya. Ambil value Paint dari class Graphics2D dengan menggunakan methode getPaint, dan masukkan kembali ke Graphics2D setelah ditentukan nilai parameter dari methode fillRect.
3. Setelah itu, compile dulu PanelGradient.java, kemudian klik tombol Clean and Build lagi



4. Penerapan selanjutnya adalah sama.


source : http://itc.himatif.or.id
Read More

Posted on 09.28

Mempercantik Java dengan Swing Make Over | Button

Swing Make Over Pada Button :D


Di dalam Java,teknikMakeOver ini sebenarnya hanya memanfaatkan method paintComponent(Graphics g) yang dimiliki oleh setiap JComponent. Hampir setiap komponen bisa dimanipulasi bentuk dan warnanya. Setelah belajar make over JPanel, komponen lainnya yang akan dimanipulasi kali ini adalah JButton. Prinsip pembuatannya sama dengan make over pada JPanel, tinggal dikreasikan saja. Contoh JButton yang sudah di-make over :

Tidak semuanya akan dibahas dalam blog ini. Hanya JButton pertama saja yang akan dibahas, karena kodenya paling simple. Ok, pertama silakan buat java class, terserah kasih nama apa, kalo mau sama kasih nama ButtonMakeOver. Sourcenya :



import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.ButtonModel;
import javax.swing.JButton;
public class ButtonMakeOver extends JButton {
public ButtonMakeOver(String text) {
setText(text);
setBorderPainted(false);
setContentAreaFilled(false);
setFocusPainted(false);
setOpaque(false);
setForeground(Color.white);
}
@Override
protected void paintComponent(Graphics g) {
ButtonModel buttonModel = getModel();
Graphics2D gd = (Graphics2D) g.create();
gd.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
gd.setPaint(new GradientPaint(0, 0, Color.white, 0, getHeight(), new Color(0, 0, 0, 0)));
if (buttonModel.isRollover()) {
gd.setPaint(new GradientPaint(0, 0, new Color(0, 0, 0, 0), 0, getHeight(), Color.white));
if (buttonModel.isPressed()) {
gd.setPaint(new GradientPaint(0, 0, Color.white, 0, getHeight(), Color.white));
setForeground(Color.BLACK);
} else {
setForeground(Color.white);
}
}
gd.fillRoundRect(0, 0, getWidth(), getHeight(), 25, 25);
gd.dispose();
super.paintComponent(g);
}
}
Untuk melihat apakah JButtonnya sudah menjadi seperti gambar di atas silakan tulis source codeberikut (Test.java) :
import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Test extends JFrame {
private ButtonMakeOver button =new ButtonMakeOver("My Button");
private JPanel panel;
public Test() {
panel = new JPanel(null);
panel.setBackground(Color.BLACK);
panel.add(button);
button.setBounds(20, 20, 120, 23);
setLayout(new BorderLayout());
add(panel, BorderLayout.CENTER);
setSize(200,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new Test().setVisible(true);
}
}

Setelah itu run project dengan menekan shift+F6, dan akan terlihat JButton seperti ini :





Read More

Posted on 09.13

Mempercantik Java dengan Swing Make Over | TextField

Swing Make Over pada TextField


Untuk JTextField lebih simple lagi source codenya, karena dia tidak memiliki model seperti JButton, namun tetap saja bisa dimanipulasi. Kalo JButton tadi dia memiliki interaksi dengan mouse, yaitu ketika mouse berada di atas JButton dan ketika mouse melakukan klik ke JButton. SedangkanJTextField tidak memiliki interaksi tersebut, walaupun tetap bisa dilakukan. Kita bikin yang simple saja, yang seperti ini :


import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;
public class TextFieldMakeOver extends JTextField {
public TextFieldMakeOver() {
setOpaque(false);
setForeground(Color.WHITE);
setCaretColor(Color.WHITE);
setBorder(new EmptyBorder(6, 6, 6, 6));
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D gd = (Graphics2D) g.create();
gd.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
gd.setPaint(new GradientPaint(0, 0, new Color(255, 255, 255, 120), 0, getHeight(), new Color(0, 0, 0, 0)));
gd.fillRoundRect(0, 0, getWidth(), getHeight(), 25, 25);
gd.setColor(Color.white);
gd.drawRoundRect(0, 0, getWidth() ­ 1, getHeight() ­ 1, 25, 25);
gd.dispose();
}
}
Kemudian ubah bagian ini di kelas Test.java
1
private ButtonMakeOver button = new ButtonMakeOver("My Button");
menjadi
1
2
private TextFieldMakeOver textField = new TextFieldMakeOver();
//selesai

source : http://itc.himatif.or.id Read More

Posted on 09.06

Swing Make Over pada Java

Java Swing ? apa itu ?

Java Swing merupakan sekumpulan kelas-kelas yang digunakan untuk mengembangkan aplikasi berbasis GUI (Graphical User Interface). Dan merupakan versi peningkatan dari AWT (Abstract Window Toolkit)

Kelebihan Java Swing

- di bundle dalam Java Development Kit
- Netral terhadap semua sistem operasi
- Mudah untuk dikembangkan

Read More

Posted on 14.40

Tutorial Instalasi Java di Windows

Siapa yang tak kenal dengan Pemrograman Java saat ini? Bahasa yang telah naik popularitasnya di kalangan developer di seluruh dunia.

Mungkin bagi sebagian orang yang ingin memulai melakukan pemrograman java ada kesulitan saat melakukan instalasi, terlebih untuk setting PATH.

Di sini saya akan coba memberikan tutorial bagaimana cara menginstalasi java di sistem operasi windows.

Anda bisa menggunakanya pada semua versi Windows baik itu Windows XP, Windows Vista maupun Windows 7.

Download java di situs oracle, setelah di download ikuti saja petunjuk instalasinya

Tutorial Instalasi Java di Windows Image

Setelah selesai menginstall, maka kita harus mengatur setingan PATH agar program-program biner java dapat dipanggil dari directory manapun.

buka windows explorer, klik kanan pada my computer, pilih properties, maka akan tampil seperti gambar di bawah ini
pilih tab Advanced
pilih Environment Variables

Tutorial Instalasi Java di Windows Image

setelah Environment Variables di pilih, maka akan tampil seperti gambar berikut

Tutorial Instalasi Java di Windows Image

kemudian pada user variables kita pilih New
isikan PATH pada Variable name, isikan directory hasil instalasi Java, yaitu C:Program FilesJavajdk1.6.0bin, setelah kita seting maka akan seperti gambar di bawah ini. Sesuaikan versi java yang anda download, kalau yang saya pakai versi 1.6.0.

Tutorial Instalasi Java di Windows Image

klik Ok, kemudian anda restart agar seting yang tadi kita lakukan berfungsi
Setelah instalasi selesai dan melakukan pengaturan PATH serta telah di restart, Buka command prompt untuk mengetest apakah seting yang kita lakukan tadi telah berfungsi dengan baik. Ketik javac –version pada layar command prompt, jika seting PATH yang kita lakukan benar, maka akan tampil seperti gambar di bawah ini


Tutorial Instalasi Java di Windows Image

Jika anda mendapatkan hasil seperti gambar di bawah ini, itu artinya anda belum benar men-set PATH JDK anda.
Tutorial Instalasi Java di Windows Image
Read more: http://blog.fastncheap.com/tutorial-instalasi-java-di-windows/#ixzz1oZGSs9Gp Read More

Posted on 13.54

inner class tanpa nama

inner class yang tanpa nama. digunakan untuk menyederhanakan kode-kode Anda lebih lanjut.
Di bawah ini merupakan modifikasi beberapa bagian

Kelas DataStructure di bawah ini terdiri dari:

* Kelas DataStructure luar, yang meliputi metode untuk menambahkan sebuah integer ke array dan mencetak nilai-nilai bahkan indeks array.
* Kelas InnerEvenIterator batin, yang mirip dengan iterator Java standar. Iterators digunakan untuk langkah melalui struktur data dan biasanya memiliki metode untuk menguji elemen terakhir, mengambil elemen saat ini, dan pindah ke elemen berikutnya.
* Metode utama yang instantiates objek DataStructure (ds) dan menggunakannya untuk mengisi array arrayOfInts dengan nilai integer (0, 1, 2, 3, dll), kemudian memanggil metode printEven untuk mencetak nilai-nilai indeks bahkan arrayOfInts .

———————————————–

public class DataStructure {
/ / Buat array
private final static int SIZE 15 =;
int pribadi [] arrayOfInts = new int [UKURAN];

publik DataStructure () {
/ / Mengisi array dengan nilai integer ascending
for (int i = 0; i arrayOfInts [i] = i;
}
}

public void printEven () {
/ / Mencetak nilai-nilai bahkan indeks dari array
InnerEvenIterator iterator = this.new InnerEvenIterator ();
sedangkan (iterator.hasNext ()) {
System.out.println (iterator.getNext () + “”);
}
}

/ / Kelas dalam menerapkan pola Iterator
swasta kelas InnerEvenIterator {
/ / Mulai melangkah melalui array dari awal
int swasta berikutnya = 0;

public boolean hasNext () {
/ / Memeriksa apakah elemen saat ini adalah yang terakhir dalam array
return ( }

public int getNext () {
/ / Merekam nilai indeks bahkan dari array
retValue int = arrayOfInts [berikutnya];
/ / Mendapatkan elemen bahkan berikutnya
berikutnya + = 2;
kembali retValue;
}
}

public static void main (String s []) {
/ / Mengisi array dengan nilai integer dan mencetak nilai-nilai hanya dari indeks bahkan
ds DataStructure DataStructure = new ();
ds.printEven ();
}
}
Read More

Posted on 13.39

Event Handling Java

Event ini berguna untuk menangani interaksi user dengan program, misalnya user memilih sebuah menu dalam aplikasi MIDlet.Untuk menangani event perlu mengimplementasikan interface CommandListener dan atau ItemListener.
CommandListener berfungsi untuk menangani jika user memilih Command tertentu
sedangkan ItemListener berfungsi untuk menangani jika user mengubah nilai seperti
misalnya mengubah pilihan pada ChoiceGroup.
Untuk memberikan gambaran sebuah event bekerja

contoh:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class ClickMe2 extends JFrame {
private JButton tombol, btnExit;

public ClickMe2() {
super (“Event Handling”);
Container container = getContentPane();
container.setLayout(new FlowLayout());
ClickListener cl = new ClickListener ();
tombol = new JButton (“Click Me!”);
tombol.addActionListener(cl);
container.add(tombol);
btnExit = new JButton (“Exit”);
btnExit.addActionListener(cl);
container.add(btnExit);
setSize (200,100);
setVisible (true);
}

public static void main (String arg[]) {
ClickMe2 test = new ClickMe2();
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

//inner class

private class ClickListener implements ActionListener {
public void actionPerformed (ActionEvent e) {
if (e.getSource() == tombol) {
JOptionPane.showMessageDialog(null, “You click me again, guys !!!”);
} else if (e.getSource() == btnExit){
JOptionPane.showMessageDialog(null, “See you, guys !”);

System.exit(0);
}

}
}
Read More

Posted on 13.23

Merubah Icon Pada Aplikasi Swing Java

Apa itu swing java ?
Swing Java adalah salah satu pemrograman berbasis GUI(Graphical User Interface) di Java. Sesungguhnya di Java terdapat dua macam pemrograman berbasis GUI(Graphical User Interface) yaitu : AWT dan Swing.

Namun dalam perkembangannya AWT sudah tidak dianjurkan untuk digunakan dikarenakan faktor keamanan. Banyak sekali fitur yang terdapat di Swing, namun dalam kesempatan ini kita hanya akan mengganti icon saja.

Walaupun Swing jarang di gunakan di aplikasi desktop base, karena kebanyakan developer lebih memilih menggunakan VB, Delphi ataupun .NET yang lebih ringan dan tidak makan banyak resource memory karena sifatnya yang native.

Namun penggunaan java bisa untuk lintas platform sehingga kita tidak perlu membuat aplikasi dua kali.

Memulai Coding
Tentunya saya tidak perlu mengingatkan kembali, dimana anda harus menulis kode program java serta bagaimana cara melakukan kompilasi dan mengeksekusinya.

Dibawah ini kode program sebelum icon terganti
// SebelumGanti.java
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
class SebelumGanti { private static void gantiIcon() {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame f = new JFrame("Icon Belum Terganti");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400, 400); f.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
gantiIcon();
}
});
}
}
Merubah Icon Pada Aplikasi Swing Java Image
Dibawah ini kode program untuk mengganti icon

// SesudahGanti.java
import javax.swing.JFrame;
import javax.swing.ImageIcon;
import javax.swing.SwingUtilities;
import java.awt.Toolkit;

public class SesudahGanti {
private static void gantiIcon() {

// ini membuat frame tampilan yang sama di semua sistem operasi
JFrame.setDefaultLookAndFeelDecorated(true);

// membuat objek frame yang mempunyai judul
JFrame f = new JFrame("Icon Sudah Terganti");

// cara pertama untuk merubah icon pada swing
ImageIcon gambar = new ImageIcon("bomb.png");
f.setIconImage(gambar.getImage());

// cara kedua untuk merubah icon pada swing
f.setIconImage(Toolkit.getDefaultToolkit().getImage("bomb.png"));
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400, 400);
f.setVisible(true);
}

public static void main(String[] args) {
// aplikasi swing ditempatkan di thread yang berbeda
SwingUtilities.invokeLater(new Runnable() {
public void run() {
gantiIcon();
} });
}
}
Merubah Icon Pada Aplikasi Swing Java Image Read More

Posted on 13.18

Belajar Membuat GUI Dengan Java

Membuat GUI dengan Java Swing itu mudah. Dalam tutorial berikut ini akan ditunjukkan caranya.
Pertama buatlah project dan buat sebuah Main class . Kemudian, instance sebuah object dari class JFrame lalu panggil method setVisible(true) pada object tersebut.
mainclassjframe

jalankan maka anda akan melihat tampilan GUI seperti ini
guikecil
Bentuknya tidak menarik ya? kita harus meresize-nya secara manual agar bentuknya lebih wajar. Untuk membuat ukurannya jadi lebih wajar, kali ini kita akan coba memanggil method setSize() dari object JFrame yang diberi parameter Width dan Height masing2 sebesar 300. Anda bisa menentukan ukurannya sesuka
setsize
Dan kita akan mendapatkan bentuk GUI yang lebih wajar
guibesar
Tapi ketika aplikasi ini di-close , ternyata aplikasi ini masih hidup (meskipun GUI-nya tidak tampak). Bagaimana kita tahu kalau aplikasi ini masih hidup? coba buka console pada Eclipse, kita akan melihat lampu berwarna merah masih menyala. Anda harus mematikannya secara manual.

aplikasimasihmenyala
Atau coba kalau kita lihat versi console DOS. Coba jalankan aplikasi GUI yang baru kita buat di DOS. Lalu kalau kita coba close kita akan melihat jendela console masih terbuka. Ini artinya aplikasi masih menyala.
consolemasihterbuka
Atau coba lihat versi jarnya (tahu kan cara membuat jar?). Apabila anda jalankan versi jar-nya lalu close aplikasi tersebut. Cobalah untuk memodifikasi file tersebut (me-rename , atau memindahkan , atau bahkan menghapus file tersebut), Misal kita hapus file tersebut setelah kita close apilikasinya. Anda akan segera melihat Error Message dari Windows karena mencoba memodifikasi file yang masih menyala.

errordelete
Satu-satunya cara adalah mematikannya secara paksa lewat Task Manager. Pada gambar Task Manager dibawah terlihat bahwa aplikasi javaw.exe masih menyala.
guiditaskmanager
Untuk menghindari hal ini maka kita perlu tambahakan satu method lagi yaitu setDefaultCloseOperation() yang diberi parameter JFrame.EXIT_ON_CLOSE untuk memberitahu GUI untuk segera meng-close aplikasi ketika kita menutupnya. Kali ini coba close aplikasi dan coba hapus atau direname aplikasinya. Tentunya sudah bisa karena kali ini aplikasi benar2 sudah tidak berjalan lagi (setelah di close).

exitonclose
Ohya! Bagaimana kalau kita beri pada Frame kita ini? Misalnya “My First GUI”. Kita bisa melakukannya dengan cara memasukkan String tersebut pada constructor.

titlepadaconstructor
Atau dengan memanggil method setTitle()
titlepadasettitle
Maka GUI kita akan tampak

berititlepadaconstructor Read More

Posted on 06.22

Enkripsi Dekripsi Caesar Cipher dengan Java

Caesar Cipher merupakan salah satu bentuk kriptografi.
Dan merupakan salah satu model dari bentuk Kriptografi Simetris atau konvensional.
Yang dimaksud dengan Symetric Cryptography atau Kriptografi Simetris yaitu kunci yang digunakan untuk melakukan enkripsi dan dekripsi adalah sama.

* Plaintext adalah pesan yang dikirim dan mudah untuk dimengerti.
* Ciphertext adalah plaintext yang sudah diubah dengan metode tertentu sehingga perlu usaha khusus untuk dapat mengerti isinya.
* Agar data yang telah di enkripsi tersebut dapat dibaca kembali maka perlu di dekripsi dengan menggunakan kunci bersama yang sama dengan saat dilakukan enkripsi. Jadi kunci bersama (public key) merupakan aturan yang berlaku saat dilakukan enkripsi dan dekripsi.

Dan contoh enkripsi konvensional klasikyang saya pakai disini adalah CAESAR CIPHER.
Yang merupakan metode enkripsi yang dilakukan pada zaman Julius Caesar. Hanya dipergunakan pada Alfabet baik huruf kapital maupun huruf kecil. Sehingga ketika proses yang dilakukan pada angka maka hal tersebut tidak dapat dilakukan. Cara enkripsi dari metode ini yaitu dengan memutar sejauh tiga langkah. Bentuk dari enkripsi ini adalah sbb:
a b c d e f g h i j k l m n o p q r s t u v w x y z
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C



contoh lain dari encripsi (lebih sederhana) :

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
*
* @author Jon
*/
public class SimpleMD5 {

private String convertToHex(byte[] data)
{
StringBuffer buf = new StringBuffer();
for (int i = 0; i < data.length; i++) {
int halfbyte = (data[i] >>> 4) & 0x0F;
int two_halfs = 0;
do {
if ((0 <= halfbyte) && (halfbyte <= 9)) {
buf.append((char) ('0' + halfbyte));
} else {
buf.append((char) ('a' + (halfbyte - 10)));
}
halfbyte = data[i] & 0x0F;
} while (two_halfs++ < 1);
}
return buf.toString();
}

public String MD5(String text)
throws NoSuchAlgorithmException, UnsupportedEncodingException {
MessageDigest md;
md = MessageDigest.getInstance("MD5");
byte[] md5hash = new byte[32];
md.update(text.getBytes("iso-8859-1"), 0, text.length());
md5hash = md.digest();
return convertToHex(md5hash);
}

public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {

SimpleMD5 mySimpleMD5 = new SimpleMD5();
String input = "password";
System.out.println("Input: " + input);
// Nge print value yg di hash .....
System.out.println("MD5 : " + mySimpleMD5.MD5(input));
} Read More

Posted on 05.42

Konsep Dasar Stream di Java

 Stream
merupakan suatu abstraksi untuk data input dan output

 Package java.io
berisi kelas yang berhubungan dengan I/O yaitu:
^Reader/Writer
      -digunakan pada stream teks
      -biasa disebut dengan character stream
      -menangani konversi teks Unicode secara otomatis
      -tidak bisa ditukarkan I/O stream secara sembarangan
^Input Stream/ Output Stream
      -digunakan pada akses informasi non teks
      -biasa disebut dengan byte stream
      -tidak menangani konversi teks Unicode secara otomatis
^I/O Network
^Exception


 Kelas Abstrak yang ada pada java.io
^Reader
^Writer
^Input Stream
^output Stream


Contoh Stream I/O :

import java.io.*;
class CopyFile {
void copy(String input, String output) {
FileReader reader;
FileWriter writer;
int data;
try {
reader = new FileReader(input);
writer = new FileWriter(output);
while ((data = reader.read()) != -1) {
writer.write(data);
}
reader.close();
writer.close();
} catch (IOException ie) {
ie.printStackTrace();
}
}
public static void main(String args[]) {
String inputFile = args[0];
String outputFile = args[1];
CopyFile cf = new CopyFile();
cf.copy(inputFile, outputFile);
}
} Read More

Posted on 10.07

cobaan atau_kah karma ?

Ya Allah,

pada hari ini saya mulai merenungi kehidupan yang saya jalani..
saya merasa sedih tak karuan,
sedih karena badan saya yang terdapat penyakit yang terus datang secara perlahan- lahan.
Karena sakit yang saya rasakan ini mempunyai rasa yang berbeda, sehingga membuat tetesan mata saya jatuh tanpa disadari ..
saya berfikir..

apakah ini cobaan dari Engkau Ya Allah?
agar saya merasa lebih tegar menghadapi cobaan demi cobaan yang datang,

ataukah ini karma buat saya karena saya tidak menjadi anak yang baik selama ini ..
Ya Allah , maafkan saya.. terkadang saya merasa lelah akan semua ini,
saya merasa tidak tahan,
apalagi untuk 3 tahun ini saya tidak tinggal dengan keluarga saya,
Ya Allah, disini saya merasa sendirian tanpa siapapun,
karena yang saya tahu, keluarga_lah yang paling bisa mengerti saya..
Untuk kali ini, saya sangat merasa takut akan penyakit yang menyerang tubuh saya ini..
saya takut bila penyakit ini enggan meninggalkan tubuh saya..
saya takut bila penyakit ini kebal akan semua obat yang ada..

Sungguh, ketakutan ini tidak pernah saya alami sebelumnya..
dengan adanya penyakit ini,
saya_pun sangat takut bila pergaulan saya dengan teman-teman yang ada disekitarku menjadi lebih renggang..

akan tetapi ada satu hal yang membuat saya menjadi bisa agak tersenyum,
yaitu adalah nasihat dari ibu saya..

nasihat agar saya lebih dekat dengan Engkau Ya Allah..
nasihat untuk berdoa hanya kepada Engkau Ya Allah..

Ya Allah,
entah ini disebut karma ataupun cobaan..
akan tetapi Ya Allah,
hamba mohon..
berikan yang terbaik buat hamba..
hamba memohon..
jangan beri penyakit ini celah untuk meredupkanku dari kehidupanku sendiri ini Ya Allah..

Ya Allah,
terimakasih Ya Allah,
engkau telah memberikan keluarga  yang sangat baik pada hamba..
Ibu yang tetap mau disamping anaknya yang nakal seperti saya ini .. :)
Ayah yang membanting tulang untuk menghidupiku hingga aku sebesar ini .. :)
Kakak yang selalu membuatku tertawa dan membuat aku melupakan semua masalah .. :)

Ya Allah,
terimakasih pula, telah memberikan hamba banyak teman,
dengan warna-warni sifat mereka,
hingga membuat kehidupan hamba lebih berarti.. :)

terimakasih pula Ya Allah,
telah memberikan kepercayaan kepada hamba untuk menjalani hidup ini :) Read More