Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.Statement;
- import java.util.ArrayList;
- import javax.swing.JOptionPane;
- import javax.swing.table.DefaultTableModel;
- import javax.swing.table.TableModel;
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- /**
- *
- * @author ASUS
- */
- public class databuku extends javax.swing.JFrame {
- /**
- * Creates new form databuku
- */
- public databuku() {
- initComponents();
- Show_Users_In_JTable();
- }
- public Connection getConnection()
- {
- Connection con;
- try {
- con = DriverManager.getConnection("jdbc:mysql://localhost/mylibrary","root","");
- return con;
- }catch(Exception e){
- e.printStackTrace();
- return null;
- }
- }
- public ArrayList<User> getUsersList()
- {
- ArrayList<User> usersList = new ArrayList<User>();
- Connection connection = getConnection();
- String query = "SELECT * FROM databuku";
- Statement st;
- ResultSet rs;
- try{
- st = connection.createStatement();
- rs = st.executeQuery(query);
- User user;
- while(rs.next())
- {
- user = new User(rs.getInt("id"),rs.getString("judul"),rs.getString("pengarang"),rs.getInt("stok"));
- usersList.add(user);
- }
- } catch (Exception e){
- e.printStackTrace();
- }
- return usersList;
- }
- //Execute the Sql Query
- public void executeSQLQuery(String query, String message)
- {
- Connection con = getConnection();
- Statement st;
- try{
- st = con.createStatement();
- if ((st.executeUpdate(query)) == 1)
- {
- //refresh jtable data
- DefaultTableModel model = (DefaultTableModel)tabeldatabuku.getModel();
- model.setRowCount(0);
- Show_Users_In_JTable();
- JOptionPane.showMessageDialog(null , "Data "+message+" Successfully");
- }else{
- JOptionPane.showMessageDialog(null, "Data Not "+message);
- }
- }catch (Exception ex){
- ex.printStackTrace();
- }
- }
- //display data from sql to jtable
- public void Show_Users_In_JTable(){
- ArrayList<User> list = getUsersList();
- DefaultTableModel model = (DefaultTableModel)tabeldatabuku.getModel();
- Object[] row = new Object[4];
- for(int i = 0; i < list.size(); i++)
- {
- row[0] = list.get(i).getId();
- row[1] = list.get(i).getJudulBuku();
- row[2] = list.get(i).getPengarang();
- row[3] = list.get(i).getStok();
- model.addRow(row);
- }
- }
- /**
- * This method is called from within the constructor to initialize the form.
- * WARNING: Do NOT modify this code. The content of this method is always
- * regenerated by the Form Editor.
- */
- @SuppressWarnings("unchecked")
- // <editor-fold defaultstate="collapsed" desc="Generated Code">
- private void initComponents() {
- id = new javax.swing.JTextField();
- jPanel1 = new javax.swing.JPanel();
- jLabel1 = new javax.swing.JLabel();
- jLabel2 = new javax.swing.JLabel();
- jLabel3 = new javax.swing.JLabel();
- judulbuku_field = new javax.swing.JTextField();
- pengarang_field = new javax.swing.JTextField();
- stok_field = new javax.swing.JTextField();
- insert = new javax.swing.JButton();
- update = new javax.swing.JButton();
- delete = new javax.swing.JButton();
- jScrollPane1 = new javax.swing.JScrollPane();
- tabeldatabuku = new javax.swing.JTable();
- setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
- jPanel1.setBackground(new java.awt.Color(0, 204, 255));
- jLabel1.setText("Judul Buku : ");
- jLabel2.setText("Pengarang :");
- jLabel3.setText("Stok :");
- pengarang_field.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- pengarang_fieldActionPerformed(evt);
- }
- });
- insert.setText("INSERT");
- insert.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- insertActionPerformed(evt);
- }
- });
- update.setText("UPDATE");
- update.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- updateActionPerformed(evt);
- }
- });
- delete.setText("DELETE");
- delete.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- deleteActionPerformed(evt);
- }
- });
- tabeldatabuku.setModel(new javax.swing.table.DefaultTableModel(
- new Object [][] {
- },
- new String [] {
- "id", "judul", "pengarang", "stok"
- }
- ) {
- boolean[] canEdit = new boolean [] {
- false, false, false, false
- };
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return canEdit [columnIndex];
- }
- });
- tabeldatabuku.addMouseListener(new java.awt.event.MouseAdapter() {
- public void mouseClicked(java.awt.event.MouseEvent evt) {
- tabeldatabukuMouseClicked(evt);
- }
- });
- jScrollPane1.setViewportView(tabeldatabuku);
- if (tabeldatabuku.getColumnModel().getColumnCount() > 0) {
- tabeldatabuku.getColumnModel().getColumn(0).setResizable(false);
- tabeldatabuku.getColumnModel().getColumn(1).setResizable(false);
- tabeldatabuku.getColumnModel().getColumn(2).setResizable(false);
- tabeldatabuku.getColumnModel().getColumn(3).setResizable(false);
- }
- javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
- jPanel1.setLayout(jPanel1Layout);
- jPanel1Layout.setHorizontalGroup(
- jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addGap(18, 18, 18)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addComponent(insert)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(update)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(delete))
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jLabel2)
- .addComponent(jLabel1)
- .addComponent(jLabel3))
- .addGap(29, 29, 29)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
- .addComponent(judulbuku_field)
- .addComponent(pengarang_field)
- .addComponent(stok_field, javax.swing.GroupLayout.DEFAULT_SIZE, 175, Short.MAX_VALUE))))
- .addGap(18, 18, 18)
- .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
- jPanel1Layout.setVerticalGroup(
- jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addGap(22, 22, 22)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGroup(jPanel1Layout.createSequentialGroup()
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel1)
- .addComponent(judulbuku_field, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(18, 18, 18)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel2)
- .addComponent(pengarang_field, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(18, 18, 18)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel3)
- .addComponent(stok_field, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(18, 18, 18)
- .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(insert)
- .addComponent(update)
- .addComponent(delete))))
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addContainerGap())
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- );
- pack();
- }// </editor-fold>
- private void pengarang_fieldActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- }
- private void tabeldatabukuMouseClicked(java.awt.event.MouseEvent evt) {
- int i = tabeldatabuku.getSelectedRow();
- TableModel model = tabeldatabuku.getModel();
- id.setText(model.getValueAt(i,0).toString());
- judulbuku_field.setText(model.getValueAt(i,1).toString());
- pengarang_field.setText(model.getValueAt(i,2).toString());
- stok_field.setText(model.getValueAt(i,3).toString());
- }
- private void insertActionPerformed(java.awt.event.ActionEvent evt) {
- String query = "INSERT INTO `databuku`(`judul`, `pengarang`, `stok`) VALUES ('"+judulbuku_field.getText()+"',"
- + " '"+pengarang_field.getText()+"',"
- + " '"+stok_field.getText()+"')";
- executeSQLQuery(query, "Inserted!");
- }
- private void updateActionPerformed(java.awt.event.ActionEvent evt) {
- String query = "UPDATE `databuku` SET `judul`='"+judulbuku_field.getText()+"',`pengarang`='"+pengarang_field.getText()+"',`stok`="+stok_field.getText()+" WHERE id="+id.getText();
- executeSQLQuery(query, "Updated!");
- judulbuku_field.setText("");
- pengarang_field.setText("");
- stok_field.setText("");
- }
- private void deleteActionPerformed(java.awt.event.ActionEvent evt) {
- String query = "DELETE FROM `databuku` WHERE id="+id.getText();
- executeSQLQuery(query, "Deleted!");
- }
- /**
- * @param args the command line arguments
- */
- public static void main(String args[]) {
- /* Set the Nimbus look and feel */
- //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
- /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
- * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
- */
- try {
- for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
- if ("Nimbus".equals(info.getName())) {
- javax.swing.UIManager.setLookAndFeel(info.getClassName());
- break;
- }
- }
- } catch (ClassNotFoundException ex) {
- java.util.logging.Logger.getLogger(databuku.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (InstantiationException ex) {
- java.util.logging.Logger.getLogger(databuku.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (IllegalAccessException ex) {
- java.util.logging.Logger.getLogger(databuku.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- } catch (javax.swing.UnsupportedLookAndFeelException ex) {
- java.util.logging.Logger.getLogger(databuku.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
- }
- //</editor-fold>
- /* Create and display the form */
- java.awt.EventQueue.invokeLater(new Runnable() {
- public void run() {
- new databuku().setVisible(true);
- }
- });
- }
- // Variables declaration - do not modify
- private javax.swing.JButton delete;
- private javax.swing.JTextField id;
- private javax.swing.JButton insert;
- private javax.swing.JLabel jLabel1;
- private javax.swing.JLabel jLabel2;
- private javax.swing.JLabel jLabel3;
- private javax.swing.JPanel jPanel1;
- private javax.swing.JScrollPane jScrollPane1;
- private javax.swing.JTextField judulbuku_field;
- private javax.swing.JTextField pengarang_field;
- private javax.swing.JTextField stok_field;
- private javax.swing.JTable tabeldatabuku;
- private javax.swing.JButton update;
- // End of variables declaration
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement