JTable extend Action Listener
import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import java.awt.*;
import java.sql.*;
public class CobaKodeTabel extends JFrame implements ActionListener
{
JLabel lbljudul = new JLabel("DATA BARANG");
JLabel lbkode = new JLabel("Kode Barang ");
JLabel lbnamab = new JLabel("Nama Barang ");
JLabel lbjenis = new JLabel("Jenis ");
JLabel lbharga = new JLabel("Harga");
JLabel lbjumlah = new JLabel("Jumlah");
JTextField tfkode = new JTextField();
JTextField tfnamab = new JTextField();
JTextField tfjenis = new JTextField();
JTextField tfharga = new JTextField();
JTextField tfjumlah = new JTextField();
JButton btsimpan = new JButton("SIMPAN");
JButton bthapus = new JButton("HAPUS");
JButton btexit = new JButton("KELUAR");
JButton btedit = new JButton("EDIT");
JButton btupdate = new JButton("UPDATE");
DefaultTableModel model = new DefaultTableModel();
JTable tampil = new JTable(model);
JScrollPane pane = new JScrollPane(tampil);
public CobaKodeTabel()
{
super("CobaKodeTabel");
lbljudul.setFont(new Font("Arial",Font.BOLD,20));
lbljudul.setBounds(150,5,210,20); tfkode.setBounds(120,30,100,25);
lbkode.setBounds(30,30,100,25); btsimpan.setBounds(250,30,100,25);
lbnamab.setBounds(30,60,100,25); tfnamab.setBounds(120,60,100,25); bthapus.setBounds(250,60,100,25); tfjenis.setBounds(120,90,100,25);
lbjenis.setBounds(30,90,100,25); btexit.setBounds(250,90,100,25);
lbharga.setBounds(30,120,100,25); tfharga.setBounds(120,120,100,25); btedit.setBounds(250,120,100,25); tfjumlah.setBounds(120,150,100,25); lbjumlah.setBounds(30,150,100,25); btupdate.setBounds(250,150,100,25); pane.setBounds(10,200,480,250);
add(lbkode); add(tfkode); add(btsimpan); add(lbljudul);
add(lbnamab); add(tfnamab); add(bthapus); add(btupdate);
add(lbjenis); add(tfjenis); add(btexit); add(tfjumlah);
add(lbharga); add(tfharga); add(btedit); add(lbjumlah);
add(pane);
btsimpan.addActionListener(this);
bthapus.addActionListener(this);
btexit.addActionListener(this);
btedit.addActionListener(this);
btupdate.addActionListener(this);
setLayout(null);
setSize(550,500);
setVisible(true);
String header [] = {"Kode", "Nama Barang", "Jenis", "Harga", "Jumlah"};
for(int kolom =0; kolom
model.addColumn(header[kolom]);
}
}
public void actionPerformed(ActionEvent ae)
{
String dataKode_Barang = tfkode.getText();
String dataNama_Barang= tfnamab.getText();
String dataJenis = tfjenis.getText();
String dataHarga = tfharga.getText();
String dataJumlah = tfjumlah.getText();
if(ae.getSource() == btsimpan)
{
PreparedStatement ps = null;
try
{
Class.forName("org.sqlite.JDBC");
Connection koneksi = DriverManager.getConnection("JDBC:sqlite:kuis.db");
ps = koneksi.prepareStatement("insert into databarang(kode,nama_barang,jenis,harga,Jumlah) values (?,?,?,?,?)");
ps.setString(1,dataKode_Barang);
ps.setString(2,dataNama_Barang);
ps.setString(3,dataJenis);
ps.setString(4,dataHarga);
ps.setString(5,dataJumlah);
ps.executeUpdate();
JOptionPane.showMessageDialog(null,"Data Telah Tersimpan");
int row=model.getRowCount ();
for (int i = 0; i < row; i++)
{
model.removeRow(0);
}
Statement stat = koneksi.createStatement ();
ResultSet set = stat.executeQuery("select * from databarang");
while(set.next())
{ model.addRow(new Object [] {set.getString("kode"),set.getString("nama_barang"),set.getString("jenis"),
set.getString("harga"),set.getString("jumlah")});
tampil.setModel(model);
}
tfkode.setText("");
tfnamab.setText("");
tfjenis.setText("");
tfharga.setText("");
tfjumlah.setText("");
}catch(Exception ex)
{
System.err.println("Error...!SIMPAN!..");
}
}
else if(ae.getSource() == bthapus)
{
tfkode.setText("");
tfnamab.setText("");
tfjenis.setText("");
tfharga.setText("");
tfjumlah.setText("");
tfkode.requestFocus();
}
else if (ae.getSource() == btedit)
{
int baris = tampil.getSelectedRow();
String kolomKode_Barang = model.getValueAt(baris, 0).toString();
tfkode.setText(kolomKode_Barang);
String kolomNama_Barang = model.getValueAt(baris, 1).toString();
tfnamab.setText(kolomNama_Barang);
String kolomJenis = model.getValueAt(baris, 2).toString();
tfjenis.setText(kolomJenis);
String kolomHarga = model.getValueAt(baris, 3).toString();
tfharga.setText(kolomHarga);
String kolomJumlah = model.getValueAt(baris, 3).toString();
tfjumlah.setText(kolomJumlah);
}
else if (ae.getSource() == btupdate)
{
//model.insertRow(0, new Object[] {dataNAMA,dataNPM,dataALAMAT,dataKET});
}
else if(ae.getSource() == btexit)
{
System.exit(0);
//new CobaAksiLoginNoDB();
}
}
public static void main (String [] OkeLah)
{
CobaKodeTabel cat = new CobaKodeTabel();
}
}
output:
Pemrograman Visual CRUD dengan Koneksi JDBC:sqlite3
import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import java.awt.*;
import java.awt.Font;
import java.awt.Color;
import java.sql.*;
public class sewalosmen1 extends JFrame implements ActionListener
{
JLabel lbljudul = new JLabel("PEMESANAN KAMAR");
JLabel lblIDPelanggan = new JLabel("ID Pelanggan :");
JLabel lblNama = new JLabel("Nama :");
JLabel lblTgl = new JLabel("Tanggal Cek In :");
JLabel lblAlamat = new JLabel("Alamat :");
JLabel lblJenisKamar = new JLabel("JenisKamar :");
JLabel lblMember = new JLabel("Member :");
JLabel lbllama = new JLabel("Lama Menginap :");
JLabel lblTelp = new JLabel("Telp :");
JTextField tfIDPelanggan = new JTextField();
JTextField tfNama = new JTextField();
JTextField tfTgl = new JTextField();
JTextField tfAlamat = new JTextField();
ButtonGroup btnGrup=new ButtonGroup();
JRadioButton rDeluxeRoom = new JRadioButton("1. Deluxe Room Rp 275.000/hari");
JRadioButton rSuiteRoom = new JRadioButton("2. Suite Room Rp 300.000/hari");
JRadioButton rPresidentRoom = new JRadioButton("3. President Room Rp 370.000/hari");
ButtonGroup btnGrup1=new ButtonGroup();
JRadioButton rMember = new JRadioButton("Member");
JRadioButton rNonMember = new JRadioButton("Non Member");
JTextField tflama = new JTextField();
JTextField tfTelp = new JTextField();
JButton btsimpan = new JButton("SIMPAN");
JButton bthapus = new JButton("HAPUS");
JButton btexit = new JButton("KELUAR");
JButton btedit = new JButton("EDIT");
JButton btupdate = new JButton("UPDATE");
DefaultTableModel model = new DefaultTableModel();
JTable tampil = new JTable(model);
JScrollPane pane = new JScrollPane(tampil);
DefaultTableModel model1 = new DefaultTableModel();
JTable tampil1 = new JTable(model1);
JScrollPane pane1 = new JScrollPane(tampil1);
public sewalosmen1()
{
super("sewalosmen1");
setVisible(true);
setSize(850,800);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(null);
lbljudul.setFont(new Font("Monotype Corsiva",Font.BOLD,25));
lbljudul.setForeground(Color.blue); lbljudul.setBounds(250,10,300,25);
lblIDPelanggan.setBounds(20,50,100,25); tfIDPelanggan.setBounds(150,50,200,25); btsimpan.setBounds(500,50,100,25); lblNama.setBounds(20,80,100,25); tfNama.setBounds(150,80,200,25); bthapus.setBounds(500,80,100,25 lbllama.setBounds(20,110,120,25); tflama.setBounds(150,110,200,25); btupdate.setBounds(500,110,100,25); lblJenisKamar.setBounds(20,140,100,25); tfTgl.setBounds(150,270,200,25); btedit.setBounds(500,140,100,25); lblMember.setBounds(20,210,100,25); tfAlamat.setBounds(150,300,200,25); btexit.setBounds(500,170,100,25); lblTgl.setBounds(20,270,100,25); tfTelp.setBounds(150,330,200,25); lblTelp.setBounds(20,330,100,25);
lblAlamat.setBounds(20,300,100,25); btsimpan.setBackground(new Color(102,255,102));
btupdate.setBackground(new Color(102,255,102));
btsimpan.setForeground(Color.red); btupdate.setForeground(Color.red); pane.setBounds(20,380,650,500); btsimpan.setFont(new java.awt.Font("Chili",1,12)); btupdate.setFont(new java.awt.Font("Chili",1,12)); pane1.setBounds(670,380,170,500); bthapus.setBackground(new Color(102,255,102)); btexit.setBackground(new Color(102,255,102));
bthapus.setForeground(Color.red); btexit.setForeground(Color.red);
bthapus.setFont(new java.awt.Font("Chili",1,12)); btexit.setFont(new java.awt.Font("Chili",1,12));
rDeluxeRoom.setBounds(150,140,220,25); btedit.setBackground(new Color(102,255,102));
rSuiteRoom.setBounds(150,160,220,25); btedit.setForeground(Color.red);
rPresidentRoom.setBounds(150,180,220,25); btedit.setFont(new java.awt.Font("Chili",1,12));
rMember.setBounds(150,210,190,25); pane.setBackground(new Color(98,115,70));
rNonMember.setBounds(150,230,190,25); pane1.setBackground(new Color(98,115,70));
add(lbljudul); add(pane); add(rDeluxeRoom); add(pane1); add(lblIDPelanggan); add(tfIDPelanggan); add(rSuiteRoom); add(rNonMember); add(lblNama); add(tfNama); add(rPresidentRoom); add(btexit);
add(lbllama); add(tflama); add(rMember); add(btedit);
add(lblJenisKamar); add(tfTgl); add(btsimpan); add(lblTelp);
add(lblMember); add(tfAlamat); add(bthapus); add(lblAlamat);
add(lblTgl); add(tfTelp); add(btupdate);
btsimpan.addActionListener(this);
bthapus.addActionListener(this);
btexit.addActionListener(this);
btedit.addActionListener(this);
btupdate.addActionListener(this);
btnGrup.add(rDeluxeRoom);
btnGrup.add(rSuiteRoom);
btnGrup.add(rPresidentRoom);
rDeluxeRoom.setSelected(true);
btnGrup1.add(rMember);
btnGrup1.add(rNonMember);
rMember.setSelected(true);
String header [] = {"ID_Pel", "Nama","JenKam","Lama", "Member","TglCekIn","Alamat","Telp"};
for(int kolom =0; kolom
model.addColumn(header[kolom]);
}
String header1 [] = {"Tarif","Diskon","Bayar"};
for(int kolom =0; kolom
model1.addColumn(header1[kolom]);
}
}
@Override
public void actionPerformed(ActionEvent act)
{
double lama=Double.parseDouble(tflama.getText());
double tarif=0,diskon=0,bayar=0;
Object obj = act.getSource();
String dataID_Pel = tfIDPelanggan.getText();
String dataNama= tfNama.getText();
String dataLama= tflama.getText();
String dataTglCekin =tfTgl.getText();
String dataAlamat=tfAlamat.getText();
String dataTelp=tfTelp.getText();
String []dataJenKam={"rDeluxeRoom","rSuiteRoom","rPresidentRoom"};
String []dataMember={"rMember","rNonMember"};
{
String JenKam="";
String Member="";
{
if (rDeluxeRoom.isSelected())
{
tarif = lama*275000;
JenKam="Deluxe Room";
}
else if (rSuiteRoom.isSelected())
{
tarif = lama*300000;
JenKam="Suite Room";
}
else
{
tarif = lama*375000;
JenKam="President Room";
}
if (rMember.isSelected())
{
Member = " Member";
if(lama>=4 && lama<=7)
{
diskon = 0.20 * tarif;
}
else if (lama>7)
{
diskon = 0.35 * tarif;
}
}
else if
(rNonMember.isSelected())
{
Member = "Non Member";
if (lama>=4 && lama<=7)
{
diskon = 0.10 * tarif;
}
else if (lama>7)
{
diskon = 0.15 * tarif;
}
}
bayar = tarif-diskon;
String [][] data = {{dataID_Pel,dataNama,JenKam,dataLama,Member,dataTglCekin,dataAlamat,dataTelp}};
Double [][] isSelected ={{tarif,diskon,bayar}};
for(int isi=0; isi {
model.addRow(data[isi]);
}
for(int isi=0; isi
model1.addRow(isSelected[isi]);
}
PreparedStatement ps = null;
PreparedStatement ps1 = null;
try
{
Class.forName("org.sqlite.JDBC");
Connection koneksi = DriverManager.getConnection("JDBC:sqlite:produk.db");
ps = koneksi.prepareStatement("insert into sewalos(ID_Pel,Nama,JenKam,Lama,Member,TglCekIn,Alamat,Telp) values (?,?,?,?,?,?,?,?)");
ps.setString(1,dataID_Pel);
ps.setString(2,dataNama);
ps.setString(3,JenKam);
ps.setString(4,dataLama);
ps.setString(5,Member);
ps.setString(6,dataTglCekin);
ps.setString(7,dataAlamat);
ps.setString(8,dataTelp);
ps.executeUpdate();
ps1 = koneksi.prepareStatement("insert into sewalosmen(Tarif,Diskon,Bayar) values (?,?,?)");
ps1.setDouble(1,tarif);
ps1.setDouble(2,diskon);
ps1.setDouble(3,bayar);
ps1.executeUpdate();
JOptionPane.showMessageDialog(null,"Data Telah Tersimpan");
int row=model.getRowCount ();
for (int i = 0; i < row; i++)
{
model.removeRow(0);
}
int row1=model1.getRowCount ();
for (int i = 0; i < row; i++)
{
model1.removeRow(0);
}
Statement stat = koneksi.createStatement ();
ResultSet set = stat.executeQuery("select * from sewalos");
while(set.next())
{ model.addRow(new Object [] {set.getString("ID_Pel"),set.getString("Nama"),set.getString("JenKam"),set.getString("Lama"),
set.getString("Member"),set.getString("TglCekIn"),set.getString("Alamat"),set.getString("Telp")});
tampil.setModel(model);
}
tfIDPelanggan.setText("");
tfNama.setText("");
tflama.setText("");
tfTgl.setText("");
tfAlamat.setText("");
tfTelp.setText("");
ResultSet set1 = stat.executeQuery("select * from sewalosmen");
while(set1.next())
{ model1.addRow(new Object [] {set1.getDouble("Tarif"),set1.getDouble("Diskon"),set1.getDouble("Bayar")});
tampil1.setModel(model1);
}
}catch(Exception ex)
{
System.err.println("Error...!SIMPAN!..");
}
}
if(obj == bthapus)
{
tfIDPelanggan.setText("");
tfNama.setText("");
tflama.setText("");
tfTgl.setText("");
tfAlamat.setText("");
tfTelp.setText("");
tfIDPelanggan.requestFocus();
}
else if (obj == btedit)
{
int baris = tampil.getSelectedRow();
String kolomID_Pelanggan = model.getValueAt(baris, 0).toString();
tfIDPelanggan.setText(kolomID_Pelanggan);
String kolomNama = model.getValueAt(baris, 1).toString();
tfNama.setText(kolomNama);
String kolomLama_Menginap = model.getValueAt(baris, 2).toString();
tflama.setText(kolomLama_Menginap);
String kolomAlamat = model.getValueAt(baris, 3).toString();
tfAlamat.setText(kolomAlamat);
String kolomTelp = model.getValueAt(baris, 4).toString();
tfTelp.setText(kolomTelp);
}
else if(obj == bthapus)
{
tfIDPelanggan.setText("");
tfNama.setText("");
tflama.setText("");
tfTgl.setText("");
tfAlamat.setText("");
tfTelp.setText("");
tfIDPelanggan.requestFocus();
}
else if (obj == btupdate)
{
//model.insertRow(0, new Object[] {dataNAMA,dataNPM,dataALAMAT,dataKET});
}
else if (obj == btexit)
{
System.exit(0);
}
}
}
public static void main (String [] form)
{
sewalosmen1 sewalosmen1 = new sewalosmen1();
}
}
Program JTable dengan Action Listener
import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import java.awt.*;
public class CobaAksiTabel extends JFrame implements ActionListener
{
JLabel lbnama = new JLabel("Nama Anda ");
JLabel lbnpm = new JLabel("NPM Anda ");
JLabel lbalamat = new JLabel("Alamat Anda ");
JLabel lbket = new JLabel("Keterangan");
JTextField tfnama = new JTextField();
JTextField tfnpm = new JTextField();
JTextField tfalamat = new JTextField();
JTextField tfket = new JTextField();
JButton btsimpan = new JButton("SIMPAN");
JButton bthapus = new JButton("HAPUS");
JButton btexit = new JButton("KELUAR");
JButton btedit = new JButton("EDIT");
JButton btupdate = new JButton("UPDATE");
DefaultTableModel model = new DefaultTableModel();
JTable tampil = new JTable(model);
JScrollPane pane = new JScrollPane(tampil);
public CobaAksiTabel()
{
super("CobaAksiTabel");
lbnama.setBounds(30,20,100,25); btexit.setBounds(230,80,100,25); btsimpan.setBounds(230,20,100,25);
lbnpm.setBounds(30,50,100,25);
lbalamat.setBounds(30,80,100,25);
lbket.setBounds(30,110,100,25);
btedit.setBounds(230,110,100,25);
tfket.setBounds(120,110,100,25);
tfnpm.setBounds(120,50,100,25);
bthapus.setBounds(230,50,100,25);
pane.setBounds(350,20,500,117);
tfnama.setBounds(120,20,100,25);
btupdate.setBounds(120,140,100,25);
tfalamat.setBounds(120,80,100,25);
add(lbnama); add(tfnama); add(btsimpan); add(pane);
add(lbnpm); add(tfnpm); add(bthapus); add(btupdate);
add(lbalamat); add(tfalamat); add(btexit);
add(lbket); add(tfket); add(btedit);
btsimpan.addActionListener(this);
bthapus.addActionListener(this);
btexit.addActionListener(this);
btedit.addActionListener(this);
btupdate.addActionListener(this);
setLayout(null);
setSize(900,220);
setVisible(true);
String header [] = {"NAMA", "NPM", "ALAMAT", "KETERANGAN"};
for(int kolom =0; kolom
model.addColumn(header[kolom]);
}
}
public void actionPerformed(ActionEvent ae)
{
String dataNAMA = tfnama.getText();
String dataNPM = tfnpm.getText();
String dataALAMAT = tfalamat.getText();
String dataKET = tfket.getText();
if(ae.getSource() == btsimpan)
{
String [][] data = {{dataNAMA,dataNPM,dataALAMAT,dataKET}};
for(int isi=0; isi {
model.addRow(data[isi]);
}
}
else if(ae.getSource() == bthapus)
{
tfnama.setText("");
tfnpm.setText("");
tfalamat.setText("");
tfket.setText("");
tfnama.requestFocus();
}
else if (ae.getSource() == btedit)
{
int baris = tampil.getSelectedRow();
String kolomNAMA = model.getValueAt(baris, 0).toString();
tfnama.setText(kolomNAMA);
String kolomNPM = model.getValueAt(baris, 1).toString();
tfnpm.setText(kolomNPM);
String kolomALAMAT = model.getValueAt(baris, 2).toString();
tfalamat.setText(kolomALAMAT);
String kolomKETERANGAN = model.getValueAt(baris, 3).toString();
tfket.setText(kolomKETERANGAN);
}
else if (ae.getSource() == btupdate)
{
//model.insertRow(0, new Object[] {dataNAMA,dataNPM,dataALAMAT,dataKET});
}
else if(ae.getSource() == btexit)
{
System.exit(0);
//new CobaAksiLoginNoDB();
}
}
public static void main (String [] OkeLah)
{
CobaAksiTabel cat = new CobaAksiTabel();
}
}
output:
CONTOH PROGRAM JTABLE DENGAN BLUE J
import javax.swing.*;
import java.awt.*;
public class ContohJTable extends JFrame
{
public static void main (String []args)
{
ContohJTable apl = new ContohJTable ();
}
public ContohJTable ()
{
super ("Tes JTable");
setSize (400,150);
Object data [] [] = {
{"11234","Astri Damayanti","Akunting", new Long(2200000)},
{"11235","Eritria","Pemasaran", new Long(1200000)},
{"11236","Satria","Personalia", new Long(1200000)},
{"11237","Tri Setyowati","EDP", new Integer(1500000)},
{"11238","Fahmi Basya","Akunting", new Long(10000000)},
{"11239","Suadi Marwan","Akunting", new Long(1100000)},
{"11241"," Listya","Pemasaran", new Long(1100000)},
};
String [] judulKolom ={"NIP","Nama","Bagian","Gaji"};
JTable tabel = new JTable(data, judulKolom);
JScrollPane scrollpane = new JScrollPane(tabel);
tabel.setPreferredScrollableViewportSize
(new Dimension(300,50));
getContentPane().add(scrollpane);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//--- Tampilkan frame
show();
}
}
OUTPUT:
Gambaran Umum Programmer
1. Java (Oleh Sun)
Pekerjaan Programmer merupakan “sebuah profesi” karena Profesi programmer adalah profesi yang paling sering terdengar, dimana profesi ini sudah ada sejak diciptakannya komputer itu sendiri. Profesional dalam bidang software development dan consulting umumnya pernah meneliti karir sebagai seorang programmer. Keahlian dalam algoritma dan penguasaan terhadap salah satu atau beberapa bahasa memprogramkan mutlak diperlukan oleh seorang programmer. Pekerjaan Programmer adalah profesi inti dan tulang punggung dalam software development karena tidak akan terwujud sebuah software aplikasi tanpa adanya programmer, sedangkan tanpa didukung oleh profesi lainnya,seorang programmer dapat membuat aplikasi yang berguan walaupun dengan cukup terbatas





