Anda di halaman 1dari 38

STMIK Cikarang

KONEKSI DATABASE ACCESS DENGAN JAVA


(NETBEANS 6.7.1)

Buka Ms. Access.. Di sini saya pakai Ms Access 2007, Untuk membuat
database baru, pilih pada New Blank Database, maka akan muncul seperti
gambar berikut ini :

setelah new blank database di klik, di bagian samping bakalan muncul


penampakan seperti berikut :

51
STMIK Cikarang

Silahkan kasih nama databasenya, di sini saya menamai database dengan


“databaseku” dan di simpan di folder D:\DATABASE\ACCESS. Simpan dengan
format Ms Access 2003 atau tipe database *.mdb.
Caranya, klik tombol folder terbuka di kanan nama database. Lalu ubah tipe file
database ke database Access 2000-2003 (*.mdb) Seperti gambar di bawah ini:

Klik OK  Klik tombol Create.

Kita klik tombol View di bawah bunderan di pojok kiri atas (Office button), Pilih
Design View, kita akan diminta meng-Save tabel itu dulu, dengan nama
mahasiswa, klik ok

52
STMIK Cikarang

Sekarang coba kita buat field-field dan menentukan tipe datanya..

Setelah desain table. Kita kembali ke datasheet view, dengan cara klik view di
bawah office button, pilih datasheet view.
Isikan record terserah anda ke dalam table.

53
STMIK Cikarang

MENGATUR KONFIGURASI ODBC

“ODBC merupakan aturan yang digunakan untuk mengakses sebuah database.


Dengan menggunakan ODBC ini maka akses ke sebuah database dapat
dilakukan dengan menggunakan nama yang dikehendaki”

Langkah-langkah konfigurasi ODBC adalah :


Buka Control Panel  Administrative Tools  Data Sources (ODBC)

Klik tombol Add

Pilih driver Microsoft Access Driver (*.mdb,), terus Finish

54
STMIK Cikarang

Isi Data Source name dengan nama terserah anda (dsnjava), untuk description
boleh dibiarkan kosong.
Klik tombol Select, cari posisi database yang tadi kita buat kemudian klik
tombol OK.

Klik tombol Advance, untuk memberi password ODBC kita.

55
STMIK Cikarang

Isi Login admin terserah anda (contoh : admin) dan Password admin.
klik OK dan OK lagi untuk mengakhiri pengaturan ODBC.

MEMBUAT FORM SEDERHANA DI NETBEANS


UNTUK MENGAKSES DATABASE

Buka netbeans, maka muncul :

Buat Project baru: File  New Project Next..


Pilih Kategori Java, dan Project Java Application Next..
Masukkan Nama Proyek.. di sini saya contohkan dengan nama ACCESS dan
lokasi
penyimpanannya di D:\
Jangan lupa hilangkan tanda centang di bagian Create Main Class  Klik
FINISH

56
STMIK Cikarang

Selanjutnya kita buat Package untuk proyek kita.. klik kanan default package 
New  Java Package

Isi Package Name seperti di bawah ini :

Klik Finish.

57
STMIK Cikarang

Package baru kita akan terlihat di bagian Panel Projects:

Klik kanan package kita tadi (koneksi) , lalu pilih New  Jframe Form

Sekarang coba kita buat form sederhana dengan komponen yang terdiri dari
JTextField,
JLabel, dan JButton seperti di bawah ini:

58
STMIK Cikarang

Ubah masing-masing komponen dengan cara :


Klik kanan – Change Variable Name - , lalu isikan nama variabelnya:
TextField untuk nama saya kasih nama variabel: txtnama
TextField untuk nim saya kasih nama variabel: txtnpm
TextField untuk Alamat saya kasih nama variabel: txtalamat
Button Tambah saya kasih nama variabel: bttambah
Button Ubah saya kasih nama variabel: btubah
Button Hapus saya kasih nama variabel: bthapus
Button Cari saya kasih nama variabel: btcari

Kemudian ... kita akan Memasukkan script sql ke dalam form.

59
STMIK Cikarang

MEMASUKKAN SCRIPT SQL KE DALAM FORM

Pertama, kita pasangkan Event Handler buat tombol Tambah kita, caranya
begini:
Klik kanan tombol Tambah kita, pilih Events  Action  actionPerformed
Setelah itu kita akan dibawa ke dalam jendela editor, di sini kita bisa melihat
source code dari form kita.

Nah.. kita akan memasukkan kode untuk tombol tambah diantara kode berikut
ini:

private void btTambahActionPerformed(java.awt.event.ActionEvent evt)
{
// di sini adalah letak kode sql kita nanti
}

Tapi sebelumnya kita coba tes dulu koneksi ke database.

60
STMIK Cikarang

TEST KONEKSI KE DATABASE

Di package koneksi, kita buat sebuah class baru dengan nama Koneksi.java
Kita isi class tersebut dengan kode di bawah ini:

package koneksi;
import java.sql.*;
import javax.swing.*;
/**
*
* @author ttg
*/

public class koneksi {


void testKoneksi()
{
try
{
String dbname="jdbc:odbc:dsnjava"; // nama ODBC
// ingat-ingat, CobaDatabase adalah nama ODBC kita yang udah kitaatur
sebelumnya
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(dbname,"Admin","admin");
// user n passwordnya
// user database samakan dengan yang kita atur di ODBC tadi, yaitu
// 'Admin', dengan password 'admin'
JOptionPane.showMessageDialog(null, "Koneksi berhasil","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
con.close();
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
}
}
public static void main (String args[])
{
koneksi test = new koneksi();
test.testKoneksi();
System.exit(0);
}
}

Setelah itu coba run file class tersebut.. (Shift + F6)


Kalau sudah benar, maka akan terdapat tampilan JoptionPane seperti berikut ini:

Perlu diingat bahwa :


String dbname="jdbc:odbc:dsnjava"; adalah menentukan nama data source (DSN)
yang sudah kita deklarasikan di ODBC tadi.
Connection con = DriverManager.getConnection(dbname,"Admin","admin");

61
STMIK Cikarang

Nah, yang ini adalah user dan password database kita, yang juga sudah kita
deklarasikan saat membuat Data Source di ODBC tadi,
Username: Admin
Password: admin

MEMASUKKAN DATA KE DATABASE (INSERT)

Setelah berhasil koneksi ke database kita, sekarang saatnya menggunakan form kita
tadi untuk insert data ke database.

Pada Event yang telah kita buat untuk tombol Tambah tadi, kita isi dengan kode berikut
ini:

private void bttambahActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String npm = txtnpm.getText();


String nama = txtnama.getText();
String alamat = txtalamat.getText();
try
{
String dbname="jdbc:odbc:dsnjava";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(dbname,"Admin","admin");
Statement statement = con.createStatement();
String sql="insert into mahasiswa values('"+npm+"','"+nama+"','"+alamat+"');";
statement.executeUpdate(sql);
statement.close();
JOptionPane.showMessageDialog(null, "Data berhasil dimasukkan..","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
txtnpm.setText("");
txtnama.setText("");
txtalamat.setText("");
//txtnpm.setFocusable(rootPaneCheckingEnabled);
con.close();
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}
}

Setelah itu coba run form kita tadi..

62
STMIK Cikarang

Isi JTextField-JTextField nya dengan data yang dikehendaki


Kemudian klik tombol tambah

Kita lihat hasilnya  Buka database access yang kita buat. Apakah data sudah masuk
atau belum.

63
STMIK Cikarang

MENCARI DATA DAN MENAMPILKANNYA DI FORM

Tambahkan event buat tombol cari ini, kemudian isi dengan kode berikut:

private void btcariActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String npm = txtnpm.getText();


try
{
String dbname="jdbc:odbc:dsnjava";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(dbname,"Admin","admin");
Statement statement = con.createStatement();
String sql="SELECT * FROM mahasiswa WHERE npm like '"+npm+"'";
ResultSet rs = statement.executeQuery(sql);
if (rs.next())
{
txtnama.setText(rs.getString(2));
txtalamat.setText(rs.getString(3));
JOptionPane.showMessageDialog(null, "Data ditemukan","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(null, "Data tidak ditemukan ","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
}
statement.close();
con.close();
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,
"Eror:"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}
}

64
STMIK Cikarang

Coba anda jalankan dan lihat hasilnya :

Masukkan NPM, lalu klik tombol Cari.

65
STMIK Cikarang

UBAH DATA

Edit data digunakan apabila kita ingin melakukan perubahan terhadap data yang sudah
ada di database kita.

Tambahkan kode berikut ini pada tombol ubah :

private void btubahActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String npm = txtnpm.getText();


String nama = txtnama.getText();
String alamat = txtalamat.getText();
try {
String dbname="jdbc:odbc:dsnjava";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(dbname,"Admin","admin");
Statement statement = con.createStatement();
String sql="UPDATE mahasiswa SET NAMA='"+nama+"', ALAMAT='"+alamat+"'
WHERE npm LIKE '"+npm+"'";
statement.executeUpdate(sql);
statement.close();
JOptionPane.showMessageDialog(null, "Data berhasil diedit..","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
con.close();
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}
}

Coba jalankan dan lihat hasilnya.

HAPUS DATA

66
STMIK Cikarang

Tambahkan kode berikut ini pada tombol Hapus :

private void bthapusActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String npm = txtnpm.getText();


try {
String dbname="jdbc:odbc:dsnjava";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(dbname,"Admin","admin");
Statement statement = con.createStatement();
String sql="DELETE FROM mahasiswa WHERE Npm LIKE '"+npm+"'";
statement.executeUpdate(sql);
statement.close();
txtnpm.setText("");
txtnama.setText("");
txtalamat.setText("");
JOptionPane.showMessageDialog(null, "Data berhasil dihapus..","Insert
Data",JOptionPane.INFORMATION_MESSAGE);
con.close();
} catch (Exception e) { JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}
}

FORM LOGIN

67
STMIK Cikarang

1. Tambahkan table dengan nama “user” ke dalam database anda dengan struktur table
sebagai berikut :

2. Tambahkan file java anda dengan klik kanan nama packages koneksi  New 
JFrameForm, berinama dengan “frmlogin”  Finish.
3. Desain form sesuai gambar dibawah ini :

Komponen-komponen yang digunakan :


- 3 buah panel tempatkan pada posisi atas, tengah dan bawah dalam frame/form
- 3 buah label
Komponen Text
Jlabel1 = = LOGIN ==
Jlabel2 User Id
Jlabel3 Password
- 2 buah textField
Komponen Text Variable Name

68
STMIK Cikarang

Jtextfield1 Kosongkan txtUserId


jtextField2 Kosongkan txtPassword
- 2 buah button
Komponen Text Variable Name
Jbutton1 OK Cmdok
Jbutton2 Batal cmdbatal

4. Ketikkan kode program sesuai dengan fungsi-fungsi dengan melihat tiap tempat
kodenya :

package koneksi;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
/**
*
* @author ttg
*/
public class frmlogin extends javax.swing.JFrame {
public Connection con;
public Statement statement;
/** Creates new form frmlogin */
public frmlogin() {
initComponents();
}

//method untuk koneksi ke database


private void koneksi(){
try {

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:dsnjava","Admin","admin");
statement = con.createStatement();
}catch (Exception e)
{
JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
}
}

//method untuk login


public void cariuser(){

69
STMIK Cikarang

try{
koneksi();
String sql = "Select * from user where user_id='"+txtUserId.getText()+"' and
password='" + txtPassword.getText() + "'";
statement = con.createStatement();
ResultSet RUser = statement.executeQuery(sql);
if (RUser.next())
{ //JOptionPane.showMessageDialog(null, "Sukses Bro.....!");
new frmMenu().show();
this.dispose(); }
}catch (Exception e){}

txtUserId.setText("");
txtPassword.setText("");
txtUserId.requestFocus();
}

//tombol ok
private void cmdOKActionPerformed(java.awt.event.ActionEvent evt) {
cariuser();
}

//tombol batal
private void cmdBatalActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0); // TODO add your handling code here:
}

//memberi kunci penekanan enter pada txtuserid


private void txtUserIdKeyReleased(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == 10){
txtPassword.requestFocus();
}
// TODO add your handling code here:
}

//memberi kunci penekanan enter pada txtpassword


private void txtPasswordKeyReleased(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == 10){
cmdOK.doClick();
} // TODO add your handling code here:
}

5. Coba jalankan program login anda.


Nb : buat juga form untuk menu (frmMenu)
FORM MENU

70
STMIK Cikarang

1. Buat form menu (frmMenu) dengan klik kanan nama packages koneksi  New 
JFrameForm, berinama dengan “frmMenu”  Finish.
2. Desain form sesuai gambar dibawah ini :

Komponen-komponen yang digunakan :


- jMenubar  atur terserah anda
- jMenuitem atur terserah anda

3. Ketikkan kode program sesuai dengan fungsi-fungsi dengan melihat tiap tempat
kodenya :

private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {


new mahasiswa().setVisible(true);
// TODO add your handling code here:
}

private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {


System.exit(0); // TODO add your handling code here:
}

4. Coba jalankan program login anda.

Latihan :
1. Buat Form untuk menambah user yang dapat login, dengan nama “frmUser”.
2. Perbaharui form menu anda dengan tambahkan Input Data User.

FORM TRANSAKSI

71
STMIK Cikarang

1. Tambahkan table dengan nama “nilai” ke dalam database anda dengan struktur table
sebagai berikut :

2. Tambahkan file java anda dengan klik kanan nama packages koneksi  New 
JFrameForm, berinama dengan “frmTNilai.java”  Finish.
3. Desain form sesuai gambar dibawah ini :

Komponen-komponen yang digunakan :


- 3 buah panel tempatkan pada posisi atas, tengah dan bawah dalam frame/form
- 10 buah label

72
STMIK Cikarang

Komponen Text
Jlabel1 NPM
Jlabel2 Tanggal
Jlabel3 Kode Matakuliah
Jlabel4 Absen
Jlabel5 Quis
Jlabel6 Tugas
Jlabel7 UTS
Jlabel8 UAS
Jlabel9 Nilai Angka
Jlabel10 Nilai Huruf
- 9 buah textField
Komponen Text Variable Name
jtextfield1 Kosongkan txtnamamhs
jtextField2 Kosongkan txtnamamtk
Jtextfield3 Kosongkan txtabsen
jtextField4 Kosongkan txtquis
Jtextfield5 Kosongkan txttugas
jtextField6 Kosongkan txtuts
Jtextfield7 Kosongkan txtuas
jtextField8 Kosongkan txtna
Jtextfield9 Kosongkan txtnh
- 2 buah combobox
Komponen Text Variable Name
jcomboBox1 = Pilih NPM = cmbnpm
jcomboBox2 = Pilih Kode MTK = cmbmtk
- 1 buah Spinner
Komponen Model Variable Name
JSpinner Model Type : Date txttgl
- 3 buah button
Komponen Text Variable Name
Jbutton1 Batal btbatal
Jbutton2 Simpan btsimpan
Jbutton3 Keluar btkeluar

4. Ketikkan kode program sesuai dengan fungsi-fungsi dengan melihat tiap tempat
kodenya :

package koneksi;

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

73
STMIK Cikarang

import javax.swing.JOptionPane;
import javax.swing.JSpinner;
import java.awt.*;

public class frmTNilai extends javax.swing.JFrame {


public Connection con;
public Statement statement;
String tanggal;

private Dimension UM = Toolkit.getDefaultToolkit().getScreenSize();


/** Creates new form frmTNilai */
public frmTNilai() {
initComponents();

txttgl.setEditor(new JSpinner.DateEditor(txttgl,"yyyy/MM/dd"));
isicombo();
isicombomtk();
setLocation(UM.width/2-getWidth()/2,UM.height/2-getHeight()/2);
}

private void hitung()


{
int xabsen, xquis, xtugas, xuts, xuas;
double xna;// = Double.parseDouble(txtna.getText());

xabsen =Integer.parseInt(txtabsen.getText());
xquis =Integer.parseInt(txtquis.getText());
xtugas =Integer.parseInt(txttugas.getText());
xuts =Integer.parseInt(txtuts.getText());
xuas =Integer.parseInt(txtuas.getText());

xna = ((0.15 * xabsen) + (0.15 * xquis) + (0.15 * xtugas) + (0.25 * xuts) + (0.35
*xuas));

txtabsen.setText(String.valueOf(xabsen));
txtquis.setText(String.valueOf(xquis));
txttugas.setText(String.valueOf(xtugas));
txtuts.setText(String.valueOf(xuts));
txtuas.setText(String.valueOf(xuas));
txtna.setText(String.valueOf(xna));

if (xna >= 80){


txtnh.setText("A");
}else if (xna >= 70){

74
STMIK Cikarang

txtnh.setText("B");
}else if (xna >= 55){
txtnh.setText("C");
}else if (xna > 35)
{
txtnh.setText("D");
}else {
txtnh.setText("E");
}
}

private void isicombo() {


try{
koneksi();
String sql = "Select * from mahasiswa";
ResultSet rs = statement.executeQuery(sql);
while (rs.next())
{
cmbnpm.addItem(rs.getString(1)); }
} catch (Exception e){} }

//method baca tabel mtk


private void isicombomtk() {
try{
koneksi();
String sql = "Select * from matakuliah";
ResultSet rs = statement.executeQuery(sql);
while (rs.next())
{
cmbmtk.addItem(rs.getString(1)); }
} catch (Exception e){}
}

//methohd baca data mahasiswa


private void baca_mhs()
{
try{
koneksi();
String sql = "Select * from mahasiswa where npm ='"+ cmbnpm.getSelectedItem()+"'";
ResultSet rs = statement.executeQuery(sql);
if (rs.next())
{
txtnamamhs.setText(rs.getString(2)); } else {
JOptionPane.showMessageDialog(null, "Data Tidak Ada");
} } catch (Exception e){ }
}

75
STMIK Cikarang

//method baca matakuliah


private void baca_mtk()
{
try{
koneksi();
String sql = "Select * from matakuliah where kdmtk ='"+ cmbmtk.getSelectedItem()+"'";
ResultSet rs = statement.executeQuery(sql);
if (rs.next())
{
txtnamamtk.setText(rs.getString(2)); } else {
JOptionPane.showMessageDialog(null, "Data Tidak Ada");
} } catch (Exception e){ }
}

private void koneksi(){


try {
//String dbname="";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:dsnjava","Admin","admin");
statement = con.createStatement();
}catch (Exception e)
{
JOptionPane.showMessageDialog(null, "Eror:
"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
}
}

private void cmbnpmActionPerformed(java.awt.event.ActionEvent evt) {


baca_mhs(); // TODO add your handling code here:
}

private void cmbmtkActionPerformed(java.awt.event.ActionEvent evt) {


baca_mtk(); // TODO add your handling code here:
}

private void txtuasKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == 10){
hitung();
// TODO add your handling code here:
}
}
private void txtabsenKeyReleased(java.awt.event.KeyEvent evt) {
if(evt.getKeyCode() == 10){
txtquis.requestFocus();// TODO add your handling code here:

76
STMIK Cikarang

}
}
private void txtquisKeyReleased(java.awt.event.KeyEvent evt) {
if(evt.getKeyCode() == 10){
txttugas.requestFocus(); // TODO add your handling code here:
}
}
private void txttugasKeyReleased(java.awt.event.KeyEvent evt) {
if(evt.getKeyCode() == 10){
txtuts.requestFocus();} // TODO add your handling code here:
}

private void txtutsKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == 10){
txtuas.requestFocus();} // TODO add your handling code here:
}

private void btsimpanActionPerformed(java.awt.event.ActionEvent evt) {


simpan(); // TODO add your handling code here:
}

private void btbatalActionPerformed(java.awt.event.ActionEvent evt) {


kosong(); // TODO add your handling code here:
}

private void btkeluarActionPerformed(java.awt.event.ActionEvent evt) {


dispose(); // TODO add your handling code here:
}

private void simpan()


{
try{
koneksi();
String xmhs = cmbnpm.getSelectedItem().toString();
String xmtk = cmbmtk.getSelectedItem().toString();
String xabs = txtabsen.getText();
String xquis = txtquis.getText();
String xtugas = txttugas.getText();
String xuts = txtuts.getText();
String xuas = txtuas.getText();
String xna = txtna.getText();
String xnh = txtnh.getText();
String msql="insert into nilai values
('"+xmhs+"','"+xmtk+"','"+xabs+"','"+xquis+"','"+xtugas+"','"+xuts+"','"+xuas+"','"+xna+
"','"+xnh+"')";
statement.executeUpdate(msql);

77
STMIK Cikarang

con.close();
JOptionPane.showMessageDialog(null,"Simpan Oke");
kosong();
}
catch(SQLException e)
{
System.out.println("Error : "+e);
}
}
private void kosong(){
txtnamamhs.setText("");
txtnamamtk.setText("");
txtabsen.setText("0");
txtquis.setText("0");
txttugas.setText("0");
txtuts.setText("0");
txtuas.setText("0");
txtna.setText("0");
txtnh.setText("");
txtabsen.requestFocus();
}
}

Latihan :
1. Perbaharui form menu anda dengan tambahkan Menu Bar “Transaksi”.
2. Koneksikan menu transaksi dengan “frmTNulai.java”.

Catatan :
Jika Anda tidak mempunyai file “main.java” pada project anda. Maka tambahkan file
tersebut untuk dapat membuat running otomatis dengan tekan F6. cara dank ode program
yang dapat anda lakukan adalah :
- Tambahkan file java anda dengan klik kanan nama packages koneksi  New  Java
Class, berinama dengan “main.java”  Finish.
- Tambahkan kode program seperti gambar di bawah ini :

78
STMIK Cikarang

Silakan baca:
permohonan pribadi dari
pendiri Wikipedia Jimmy
Wales.
Baca sekarang

Java
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Belum Diperiksa
Langsung ke: navigasi, cari
Artikel ini adalah tentang bahasa pemrograman komputer. Untuk pulau di Indonesia, lihat
Jawa.
"Bahasa Java" beralih ke halaman ini. Untuk bahasa daerah Jawa, lihat bahasa Jawa.
Artikel bertopik teknologi informasi ini perlu dirapikan agar memenuhi
standar Wikipedia
Merapikan artikel bisa berupa membagi artikel ke dalam paragraf atau wikifikasi artikel. Setelah
dirapikan, tolong hapus pesan ini.
Java

Paradigma: OOP
Muncul Tahun: 1990-an
Perancang: Sun Microsystems
Sistem pengetikan: kuat, statis

79
STMIK Cikarang

Implementasi: banyak
Terpengaruh oleh: Objective-C, C++, Smalltalk, Eiffel
Mempengaruhi: C#, D, J#, PHP

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk
telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di
Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa
ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis
model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.
Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan
dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa
pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus
didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena
fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa
platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali,
jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling
populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis
perangkat lunak aplikasi ataupun aplikasi berbasis web.

Daftar isi
[sembunyikan]
 1 Sejarah perkembangan Java
 2 Versi Awal
 3 Kelebihan
 4 Kekurangan
 5 Contoh Kode Program Sederhana Dalam Java
 6 Tahap Kompilasi Java
 7 Integrated Development Environment

 8 Pranala luar

[sunting] Sejarah perkembangan Java


Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama 18
bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum
menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton,
Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari
Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe
Palrang.

Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo
Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program
Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi

80
STMIK Cikarang

layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai
"*7" (Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah
beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada
sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.

Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat
dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet
sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun
1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi
dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat
perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade
Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka.
Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San
Jose Mercury News pada tanggal 23 Mei 1995.

Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah
ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan
George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak
Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah
perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil
nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling
langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau
Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa
Inggris untuk Jawa adalah Java).

[sunting] Versi Awal


Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java
Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus
dikembangkan pada versi selanjutnya:

 java.lang: Peruntukan kelas elemen-elemen dasar.


 java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
 java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas
kelas penanggalan.
 java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan
komputer lain menggunakan jaringan TCP/IP.
 java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)

81
STMIK Cikarang

 java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah
web.

[sunting] Kelebihan
 Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa
platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di
mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java
dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa
mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform
tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java
dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas
Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft
Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem
operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs
Java) untuk meninterpretasikan bytecode tersebut.

 OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)??????


 Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan
library/perpustakaan (kumpulan program program yang disertakan dalam
pemrograman java) yang sangat memudahkan dalam penggunaan oleh para
pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini
ditambah dengan keberadaan komunitas Java yang besar yang terus menerus
membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan
pembangunan aplikasi.

 Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga


menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java
sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java.
Universitas-universitas di Amerika Serikat juga mulai berpindah dengan
mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami
oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan
komputer.

 Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan


memori sehingga para pemrogram tidak perlu melakukan pengaturan memori
secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

[sunting] Kekurangan
 Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang tidak
kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya
SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.

82
STMIK Cikarang

 Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi


menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan
bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-
nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft
.NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih
sulit disembunyikan dan mudah dibajak/direverse-engineer.

 Penggunaan memori yang banyak. Penggunaan memori untuk program


berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya
seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya
ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru
(karena trend memori terpasang makin murah), tetapi menjadi masalah bagi
mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4
tahun.

[sunting] Contoh Kode Program Sederhana Dalam Java


Contoh program Halo dunia yang ditulis menggunakan bahasa pemrograman Java adalah
sebagai berikut:

// Outputs "Hello, world!" and then exits


public class HelloWorld {
public static void main(String args[]) {
System.out.println("Hello, world!");
}
}

[sunting] Tahap Kompilasi Java


1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam
bentuk berkas '.java'.
2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk
berkas '.class'.
3. Muat. Pemuat kelas memuat bytecodes ke memori.
4. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem
keamanan Java.
5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di
pakai‘’

[sunting] Integrated Development Environment


Banyak pihak telah membuat IDE (Integrated Development Environment - Lingkungan
Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli 2006) antara lain:

 Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika
Serikat

83
STMIK Cikarang

 BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia


 NetBeans (open source- Common Development and Distribution License
(CDDL))

NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah
GUI Editor yang menurut pendapat umum merupakan yang terbaik.[rujukan?]

 Eclipse JDT (open source- Eclipse Public License)

Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota 'Eclipse


Foundation' (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse
Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung
dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi
dibandingkan IDE lainnya.

 IntelliJ IDEA (commercial, free 30-day trial)


 Oracle JDeveloper (free)
 Xinox JCreator (ada versi berbayar maupun free)

JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih
sedikit) dari kebanyakan IDE.

[sunting] Pranala luar


 (Inggris) Situs resmi Java Sun
 (Inggris) Java.net Wiki
 (Inggris) Sejarah Java
 (Indonesia) Kumpulan Tips Pemrograman Java
 (Indonesia) Wiki JUG-Indonesia
 (Inggris) Decompiler-HOWTO
 (Inggris) Full Java Tutorial
 (Inggris) Learn Java Programming by Examples
 (Indonesia) Tutorial Video Pemrograman Java

[sembunyikan]
l•b•s
Bahasa pemrograman

Daftar bahasa pemrograman

ALGOL • APL • Ada • BASIC • C • C++ • C# • CSS • COBOL • Common Lisp • Eiffel •
FORTH • Fortran • Haskell • Java • JavaScript • Jython • LISP • LOGO • Lua • Mesa •
Modula-2 • Oberon • Ocaml • Objective-C • Perl • PHP • Prolog • PL/I • Pascal •
PostScript • Python • Ruby • Scheme • Smalltalk • SQL • Tcl • Visual Basic
Diperoleh dari "http://id.wikipedia.org/w/index.php?title=Java&oldid=4916630"
Kategori:

84
STMIK Cikarang

 Bahasa pemrograman
 Bahasa pemrograman berorientasi objek

Kategori tersembunyi:
 Artikel yang belum dirapikan November 2011
 Artikel yang perlu diperbaiki bertopik teknologi informasi
 Artikel dengan pernyataan yang tidak disertai rujukan
 Artikel dengan pernyataan yang tidak disertai rujukan November 2011

Akun

 Masuk log / buat akun

Ruang nama

 Halaman
 Pembicaraan

Varian

Halaman

 Baca
 Sunting

Tindakan

 Versi terdahulu
 ↑

Pencarian

Navigasi

 Halaman Utama
 Perubahan terbaru
 Peristiwa terkini
 Halaman sembarang

Komunitas

 Warung Kopi
 Portal komunitas
 Bantuan

85
STMIK Cikarang

Wikipedia

 Tentang Wikipedia
 Pancapilar
 Kebijakan
 Menyumbang

Cetak/ekspor

 Buat buku
 Unduh versi PDF
 Versi cetak

Peralatan

 Pranala balik
 Perubahan terkait
 Halaman istimewa
 Pranala permanen
 Kutip halaman ini

Bahasa lain

 Acèh
 Afrikaans
 አማርኛ
 ‫العربية‬
 Azərbaycanca
 Žemaitėška
 Беларуская
 Беларуская (тарашкевіца)
 Български
 বববাংলব
 Bosanski
 ᨅᨔ ᨕᨕᨁᨁ
 Català
 Mìng-dĕĕng-ngṳṳ
 Corsu
 Česky
 Чӑвашла
 Cymraeg
 Dansk
 Deutsch
 Ελληνικά
 English
 Esperanto
 Español

86
STMIK Cikarang

 Eesti
 Euskara
 ‫فارسی‬
 Suomi
 Français
 Gaeilge
 Galego
 ‫עברית‬
 हहिन्दद
 Hrvatski
 Kreyòl ayisyen
 Magyar
 Հայերեն
 Interlingua
 Íslenska
 Italiano
 日本語
 ქართული
 Qaraqalpaqsha
 한국어
 Latina
 Ligure
 Lietuvių
 Latviešu
 Македонски
 മലയയാളള
 Монгол
 मरराठठ
 Bahasa Melayu
 မမန မဘသ
 Nederlands
 Norsk (nynorsk)
 Norsk (bokmål)
 ਪਪੰ ਜਜਾਬਬ
 Polski
 Português
 Română
 Русский
 Саха тыла
 Srpskohrvatski / Српскохрватски
 සසිංහල
 Simple English
 Slovenčina
 Slovenščina

87
STMIK Cikarang

 Shqip
 Српски / Srpski
 Svenska
 தமமிழ
 తతెలలుగగ
 Тоҷикӣ
 ไทย
 Tagalog
 Türkçe
 Українська
 O'zbek
 Vèneto
 Tiếng Việt
 吴语
 中文
 粵語

 Halaman ini terakhir diubah pada 15.51, 6 November 2011.


 Teks tersedia di bawah Lisensi Atribusi/Berbagi Serupa Creative Commons;
ketentuan tambahan mungkin berlaku. Lihat Ketentuan Penggunaan untuk lebih
jelasnya.

 Kebijakan privasi
 Tentang Wikipedia
 Penyangkalan
 Tampilan seluler

88

Anda mungkin juga menyukai