Skip to content

Instantly share code, notes, and snippets.

@nugraha16
Last active December 10, 2015 13:59
Show Gist options
  • Save nugraha16/4444974 to your computer and use it in GitHub Desktop.
Save nugraha16/4444974 to your computer and use it in GitHub Desktop.
Membuat No Urut di Table,create autonumber in jtable
package penjualanku;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.*;
import javax.sql.*;
import com.jtattoo.plaf.mcwin.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
//Anugrah Bagus Susilo
public class EntryPelanggan extends JFrame implements ActionListener,MouseListener{
Dimension Layar = Toolkit.getDefaultToolkit().getScreenSize();
private JLabel lblNoPelanggan = new JLabel("Nomer Pelanggan");
private JTextField txtNoPelanggan = new JTextField(20);
private JLabel lblNmPelanggan = new JLabel("Nama Pelanggan");
private JTextField txtNmPelanggan = new JTextField(20);
private JLabel lblAlmtPelanggan = new JLabel("Alamat Pelanggan");
private JTextField txtAlmtPelanggan = new JTextField(20);
private JLabel lblNoTelp = new JLabel("Nomer Telepon");
private JTextField txtNoTelp = new JTextField(20);
private JLabel lblNoFax = new JLabel("Nomer Fax");
private JTextField txtNoFax = new JTextField(20);
//private JButton btncari = new JButton(new ImageIcon("src/penjualanku/image/cari.jpeg"));
//private JTextField txtCari = new JTextField();
private JButton btnBaru = new JButton("Baru",new ImageIcon("src/penjualanku/image/baru.jpeg"));
private JButton btnUbah = new JButton("Ubah",new ImageIcon("src/penjualanku/image/edit.jpeg"));
private JButton btnHapus = new JButton("Hapus",new ImageIcon("src/penjualanku/image/hapus.jpeg"));
private JButton btnKeluar = new JButton("Keluar",new ImageIcon("src/penjualanku/image/close.jpeg"));
private JLabel gambar = new JLabel(new ImageIcon("src/penjualanku/imageomd.jpeg"));
private String[] JdlTabel = {"","No_Plgn","Nama_Plgn","Almt_Plgn","No_Telp","No_Fax"};
DefaultTableModel tabModel;
JTable tabel = new JTable();
JScrollPane scrTabel = new JScrollPane();
//Methods Declarations
public EntryPelanggan (){
super("Entry Pelanggan");
setIconImage(getToolkit().getImage("src/penjualanku/image/user.jpeg"));
setSize(550,480);
setVisible(true);
getContentPane().setLayout(null);
setLocationRelativeTo(null);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
tabModel = new DefaultTableModel(null,JdlTabel);
tabel.setModel(tabModel);
scrTabel.getViewport().add(tabel);
tabel.setEnabled(true);
scrTabel.setBounds(10, 190, 500, 120);
lblNoPelanggan.setBounds(10,20,150,20);
txtNoPelanggan.setBounds(150,20,150,20);
txtNoPelanggan.setEnabled(false);
lblNmPelanggan.setBounds(10,50,150,20);
txtNmPelanggan.setBounds(150,50,150,20);
lblAlmtPelanggan.setBounds(10,80,150,20);
txtAlmtPelanggan.setBounds(150,80,150,20);
lblNoTelp.setBounds(10,110,150,20);
txtNoTelp.setBounds(150,110,150,20);
lblNoFax.setBounds(10,140,150,20);
txtNoFax.setBounds(150,140,150,20);
//btncari.setBounds(10, 400, 40, 30);
//txtCari.setBounds(130,400,150,20);
btnBaru.setBounds(10,320,100,30);
btnUbah.setBounds(110,320,100,30);
btnHapus.setBounds(210,320,110,30);
btnKeluar.setBounds(320,320,115,30);
gambar.setBounds(300,30,240,108);
getContentPane().add(lblNoPelanggan);
getContentPane().add(txtNoPelanggan);
getContentPane().add(lblNmPelanggan);
getContentPane().add(txtNmPelanggan);
getContentPane().add(lblAlmtPelanggan);
getContentPane().add(txtAlmtPelanggan);
getContentPane().add(lblNoTelp);
getContentPane().add(txtNoTelp);
getContentPane().add(lblNoFax);
getContentPane().add(txtNoFax);
getContentPane().add(scrTabel);
//getContentPane().add(btncari);
//getContentPane().add(txtCari);
getContentPane().add(btnBaru);
getContentPane().add(btnUbah);
getContentPane().add(btnHapus);
getContentPane().add(btnKeluar);
getContentPane().add(gambar);
btnBaru.addActionListener(this);
btnUbah.addActionListener(this);
btnHapus.addActionListener(this);
btnKeluar.addActionListener(this);
//txtCari.addActionListener(this);
tabel.addMouseListener(this);
TampilkeTabel();
autonumber();
}
@Override
public void mouseClicked(MouseEvent arg0) {
getDataTabel();
}
@Override
public void mouseEntered(MouseEvent arg0) {
}
@Override
public void mouseExited(MouseEvent arg0) {
}
@Override
public void mousePressed(MouseEvent arg0) {
}
@Override
public void mouseReleased(MouseEvent arg0) {
}
@Override
public void actionPerformed(ActionEvent e) {
/*if(e.getSource() == txtCari){
cariPelanggan();
}*/
if(e.getSource() == btnBaru){
TambahPelanggan();
}
if(e.getSource() == btnUbah){
UbahPelanggan();
}
if(e.getSource() == btnHapus){
HapusPelanggan();
}
if(e.getSource() == btnKeluar){
try {
int reply = JOptionPane.showConfirmDialog (this,
"Yakin Mau Keluar?",
"Sistem Penjualan - Keluar", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (reply == JOptionPane.YES_OPTION) {
setVisible (false); //Menyembunyikan Frame.
dispose(); //Membersihkan Resource dari system memori
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Membebaskan aplikasi dari memori
//System.exit (0); //Keluar dari Aplikasi.
}
}
catch (Exception ex) {
}
}
}
/*void cariPelanggan(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/penjualan", "root", "root");
Statement state = con.createStatement();
String sql = "Select * from pelanggan where NoPelanggan like '%" + txtCari.getText() + "%'" +
"or NmPelanggan like '%" + txtCari.getText() + "%'";
ResultSet rs = state.executeQuery(sql);
while (rs.next()) {
tabModel.addRow(new Object[]{
rs.getString(1),
rs.getString(2),
rs.getString(3),
rs.getString(4),
rs.getString(5)
});
}
tabel.setModel(tabModel);
}catch (Exception e){
}
}*/
void autonumber(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/penjualan", "root", "root");
Statement state = con.createStatement();
String sql = "select max(NoPelanggan) from pelanggan";
ResultSet rs = state.executeQuery(sql);
while(rs.next())
{
int a = rs.getInt(1);
txtNoPelanggan.setText("000"+Integer.toString(a+1));
}
rs.close();
con.close();
}
catch(Exception ex){
}
}
void getDataTabel(){
txtNoPelanggan.setText(""+tabModel.getValueAt(tabel.getSelectedRow(),1));
txtNmPelanggan.setText(""+tabModel.getValueAt(tabel.getSelectedRow(),2));
txtAlmtPelanggan.setText(""+tabModel.getValueAt(tabel.getSelectedRow(),3));
txtNoTelp.setText(""+tabModel.getValueAt(tabel.getSelectedRow(),4));
txtNoFax.setText(""+tabModel.getValueAt(tabel.getSelectedRow(),5));
}
void TampilkeTabel(){
try{
hapusTabel();
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/penjualan", "root", "root");
Statement state = con.createStatement();
String sql = "select * from pelanggan ";
ResultSet rs = state.executeQuery(sql);
while(rs.next())
{
String VNoPelanggan = rs.getString("NoPelanggan");
String VNmPelanggan = rs.getString("NmPelanggan");
String VAlmtPelanggan = rs.getString("AlmtPelanggan");
String VNoTelp = rs.getString("NoTelp");
String VNoFax = rs.getString("NoFax");
String[] data = {"",VNoPelanggan,VNmPelanggan,VAlmtPelanggan,VNoTelp,VNoFax};
tabModel.addRow(data);
NoUrut();
autonumber();
Kosong();
}
rs.close();
con.close();
}
catch(Exception ex){
}
}
void hapusTabel(){
int brs = tabModel.getRowCount();
for(int i=0;i<brs;i++){
tabModel.removeRow(0);
}
}
void NoUrut(){
int brs = tabModel.getRowCount();
for(int i=0;i<brs;i++){
String no = String.valueOf(i+1);
tabModel.setValueAt(no+".",i,0);
}
}
void TambahPelanggan(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/penjualan","root","root");
Statement st = con.createStatement();
String sql = "insert into pelanggan values('"+txtNoPelanggan.getText()+
"','"+txtNmPelanggan.getText()+
"','"+txtAlmtPelanggan.getText()+
"','"+txtNoTelp.getText()+
"','"+txtNoFax.getText()+"')";
int hasil = st.executeUpdate(sql);
if(hasil>0)
JOptionPane.showMessageDialog(null,"Data Pelanggan berhasil di tambah","Pesan",JOptionPane.INFORMATION_MESSAGE);
con.close();
TampilkeTabel();
//Kosong();*/
}
catch(Exception ex){
JOptionPane.showConfirmDialog(null, "Data Pelanggan gagal di tambah");
}
}
void UbahPelanggan(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/penjualan","root", "root");
Statement state = con.createStatement();
String sql = "update pelanggan set NmPelanggan ='"+txtNmPelanggan.getText()+
"',AlmtPelanggan ='"+txtAlmtPelanggan.getText()+
"',NoTelp ='"+txtNoTelp.getText()+
"',NoFax ='"+txtNoFax.getText()+
"'where NoPelanggan ='"+txtNoPelanggan.getText()+"'";
int vHasil = state.executeUpdate(sql);
if(vHasil==0)
JOptionPane.showMessageDialog(null, "Data Pelanggan berhasil di Ubah", "Pesan", JOptionPane.INFORMATION_MESSAGE);
con.close();
TampilkeTabel();
}
catch(Exception ex){
JOptionPane.showConfirmDialog(null, "Data Pelanggan gagal di ubah");
}
}
void HapusPelanggan(){
try{
String className = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost/penjualan";
String user = "root";
String password = "root";
Class.forName(className).newInstance();
Connection koneksi = DriverManager.getConnection(url, user, password);
Statement state = koneksi.createStatement();
String query = "delete from pelanggan where NoPelanggan = '"+txtNoPelanggan.getText()+"' ";
int Result = state.executeUpdate(query);
if(Result==1){
JOptionPane.showConfirmDialog(null, "Data Pelanggan berhasil di hapus");
TampilkeTabel();
koneksi.close();
Kosong();
}
}catch (Exception e) {
JOptionPane.showConfirmDialog(null, "Data Pelanggan gagal di hapus");
}
}
void Kosong(){
//txtNoPelanggan.setText("");
txtNmPelanggan.setText("");
txtAlmtPelanggan.setText("");
txtNoTelp.setText("");
txtNoFax.setText("");
}
public static void main(String [] args){
try{
UIManager.setLookAndFeel(new McWinLookAndFeel());
}
catch (UnsupportedLookAndFeelException e){
//handle exception
}
new EntryPelanggan();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment