Belajar Java (Praktek Java : Entry Data Barang)


Yang perlu dipersiapkan :
- Java compiler yg udah diinstall (dalam kesempatan ini gw pake JCreator)
- J2sdk (pastikan paket j2sdk sudah terinstall di pc sebelum install JCreator)
- Msaccess (udah pasti ada kalo nginstall microsoft office pack, bawaanya dia)

Pertama buat dulu database yang akan kita pake diprogram, caranya :
- Buka msaccess : Star --> All Program --> Microsoft Office --> Microsoft Office access 2003
- Akan terbuka program microsoft access, disebelah kanan pilih “Create a new file..”
- Kemudian masih disebelah kanan pilih “Blank database..” akan muncul form File new database, pada file nama isikan “Penjualan.mdb” ini adalah nama database yang akan kita buat, untuk tempat penyimpanan terserah tapi ada baiknya anda sudah mempersiapkan sebuah folder tersendiri. Setelah itu klik Create.
- Ini berarti kita sudah memliki sebuah database, dan akan muncul form ”Penjualan : Database (Access 2000 format)
- Pilih “Create table in Design view”, akan muncul form tabel1 pada field name dan data typenya isikan sebagai berikut :
Field Name (Data Type)
Kd_Brg (Text)
Nm_Brg (Text)
Satuan (Text)
Harga (Number)
Stok (Number)

- Sesuaikan (modifikasi) lebar datanya tiap field menjadi sebagai berikut Kd_Brg(10), Nm_Brg(30), Satuan(10), Harga dan Stok biarkan default, cara merubah lebar datanya : klik nama fieldnya missal Kd_Brg kemudian pada bagian bawah terdapat “Field Property”, pada bagian “General” ada kolom “Field size“ defaultnya 50, kita sesuakan sesuai data diatas.
- Buat field Kd_Brg menjadi primary key dengan cara klik kana pada file Kd_Brg lalu pilih “Primary Key”
- Setelah selesai tutup form Table1 (klik tombol x dipojok kanan atas form Table1), Do you want to save changes to the design of table ‘Table1’ ? pilih yes, akan muncul pop up “save as” Table name : , isikan “Barang” --> ok
- Buka table Barang yang kita buat tadi double klik “Barang” pada form ”Penjualan : database”, akan muncul form ”Barang : Table” dengan field2 yang tadi kita buat, masukan data pada field menjadi sbb :
Kd_Brg Nm_Brg Satuan Harga Stok
00001 TV Toshiba Unit 5000000 10
- Setelah selesai close table tadi dan tutup aplikasi msaccese saja, dengan demikian kita sudah memiliki database = ”Penjualan” yang berisi field = ”Barang ”, dengan data seperti diatas.

Setting ODBC driver
- Star --> Control Panel --> Administrative Tools --> Data Sources (ODBC)
- Akan muncul form ODBC Data Sources Administrator, pada tab User DSN --> klik Add --> pilih Microsoft Access Driver (*.mdb) --> Finish
- Akan muncul form ODBC Microsoft Access Setup, masukan Data Sources Name = “Penjualan” (tanpa tanda kutip) --> Select…, cari directory dimana anda menyimpan database anda tadi, hingga muncul database yg telah kita buat tadi dikolom sebelah kiri, pilih databasenya “Penjualan.mdb” --> Ok --> Ok --> Ok , lalu tutup Administratives tools.

Program akses data base dengan java :
- Buka Jcreator dari star menu program, klik File --> New --> File
- File Type pilih Java File --> Next
- File Path, Name isikan “EntryDataBarang” --> Finish
- Masukan kode sebagai berikut :

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

public class EntryDataBarang extends JFrame {
JLabel jlabel1 = new JLabel();
JLabel jlabel2 = new JLabel();
JTextField txtKode = new JTextField();
JTextField txtNama = new JTextField();
List dataBarang = new List();
JLabel jlabel3 = new JLabel();
Button button1 = new Button();
Connection con;

public static void main (String[] args){
EntryDataBarang aturtampilan = new EntryDataBarang();
aturtampilan.setSize(355,400);
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
int lebar = (screen.width - aturtampilan.getSize().width) / 2;
int tinggi = (screen.height - aturtampilan.getSize().height) / 2;

aturtampilan.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
aturtampilan.setLocation(lebar, tinggi);
aturtampilan.setResizable(false);
aturtampilan.setVisible(true);
}

public EntryDataBarang(){
this.getContentPane().setLayout(null);
this.setTitle("Entry Data Barang");
jlabel1.setHorizontalAlignment(SwingConstants.RIGHT);
jlabel1.setText("Kode Barang :");
jlabel1.setBounds(new Rectangle(30, 13, 86, 15));
jlabel2.setHorizontalAlignment(SwingConstants.RIGHT);
jlabel2.setText("Nama Barang :");
jlabel2.setBounds(new Rectangle(30, 43, 86, 15));

txtKode.setText(null);
txtKode.setBounds(new Rectangle(120, 13,60,21));
txtNama.setText(null);
txtNama.setBounds(new Rectangle(120, 43,210,21));
dataBarang.setBounds(new Rectangle(29, 127,288,220));
jlabel3.setText("Data Barang");
jlabel3.setBounds(new Rectangle(30, 109,343,15));
button1.setLabel("Simpan");
button1.setBounds(new Rectangle(122, 72,64,24));

button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt){
SimpanData(evt);
}
});
this.getContentPane().add(jlabel1,null);
this.getContentPane().add(jlabel2,null);
this.getContentPane().add(txtKode,null);
this.getContentPane().add(txtNama,null);
this.getContentPane().add(dataBarang,null);
this.getContentPane().add(jlabel3,null);
this.getContentPane().add(button1,null);
koneksidatabase();
databarang();
}
public void koneksidatabase(){
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
try{
String url = "jdbc:odbc:Penjualan";
String user = "";
String pass = "";
con = DriverManager.getConnection(url, user, pass);
}
catch (SQLException sqle) {

}
}
catch (ClassNotFoundException ce){
}
}
public void databarang(){
dataBarang.removeAll();

try{
Statement stat = con.createStatement();
ResultSet rSet = stat.executeQuery("Select * from Barang");
while (rSet.next()) {
dataBarang.add(rSet.getString("Kd_Brg") + " | " + rSet.getString("Nm_Brg"));
}
stat.close();
}
catch (SQLException se) { System.out.println("SQL salah" + se);}
catch (Exception e){System.out.println("Pesan error " + e); }
}
void SimpanData(ActionEvent evt) {
try{
PreparedStatement stat = con.prepareStatement("Insert into Barang values(?,?)");
try{
stat.setString(1, txtKode.getText());
stat.setString(2, txtNama.getText());
stat.executeUpdate();
}
catch (SQLException se){
JOptionPane.showMessageDialog(null, "Data tidak disimpan...Entry Ulang\nPesan Error : \n+ se");
txtKode.setFocusable(true);
}
databarang();
stat.close();
}
catch (Exception er){
System.out.println("Pesan Error = "+ er);
}
}
}

Compile and Execute program
- Build --> Compile File, apabila statusnya process completed berarti tdk ada error pada listing program
- Build --> Execute File
entrydatabarang
Ini adalah program dengan data barang yg telah kita masukan (sudah ada di database)

- Test masukan Kode Barang : 00002, Nama Barang : Radio --> Simpan.
- Apabila muncul error.
entrydatabarang-error

- Tambahkan sql sintax pada program dibagian ”insert into Barang” sbb berikut :
PreparedStatement stat = con.prepareStatement("Insert into Barang(Kd_Brg,Nm_Brg) values(?,?)");

- Bagian yg dicetak tebal yang ditambahkan, artinya kita memasukan data ke field Kd_Brg dan Nm_Brg pada tabel Barang. Kemungkinan error karena ada beberapa field pada tabel yang kita buat tidak boleh kosong (not null) secara default.
- Setelah ditambahkan coba compile dan execute lagi kemudian masukan data, harusnya begitu menekan tombol ”Simpan” data akan pintah kekolom bawah.
entrydatabarang-final

Penjelasan koding program java tidak dijelaskan, mudah2an bisa menelaahnya pelan2 karen program diatas sangat sederhana.

Sementara sekian dulu pelajaran java kita, bahan ini gw ambil dari praktek dikampus dan memang sementara hanya akses 2 field saja dari table Barang tersebut, sekarang coba kita kembangkan agar bisa menampilkan semua tabel dan insert into semua tabel. Ingat prinsip belajar yang effektif ”Pelajari Yang Sudah Ada, Kemudian Kembangkan Semaksimal Mungkin”

Advertisements

~ by jai on 03/18/2009.

2 Responses to “Belajar Java (Praktek Java : Entry Data Barang)”

  1. […] Java dapat dikoneksikan ke brbagai DBMS seperti mySQL, Oracle, atau bahkan MS-ACCESS. Yang paling sederhana dan tidak perlu susah-susah cari software karena biasanya kita sudah punya adalah MS-ACCESS. Berikut ini posting tulisan koneksi Java dengan DBMS MS-ACCESSS yang mungkin bermanfaat : Sharing baca di blog ini […]

  2. thanks gan ilmunya,,mantap..!!! 🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s