Advertisement
stevennathaniel

Java SE JasperReport: Berhasil Bikin Report Database

Jan 23rd, 2015
336
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 36.49 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package latihan12;
  7.  
  8.  
  9. import com.toedter.calendar.JDateChooser;
  10.  
  11. import javax.swing.JTable;
  12.  
  13. import java.sql.Connection;
  14.  
  15. import java.sql.DriverManager;
  16.  
  17. import java.sql.ResultSet;
  18.  
  19. import java.sql.ResultSetMetaData;
  20.  
  21. import java.sql.Statement;
  22.  
  23. import java.util.logging.Level;
  24.  
  25. import javax.swing.table.DefaultTableModel;
  26.  
  27. import java.text.DateFormat;
  28.  
  29. import java.text.SimpleDateFormat;
  30.  
  31. import java.util.Calendar;
  32.  
  33. import java.sql.*;
  34.  
  35. import java.util.Date;
  36.  
  37. import java.util.*;
  38.  
  39. import java.util.Locale;
  40.  
  41. import java.util.Vector;
  42.  
  43. import javax.swing.JOptionPane;
  44.  
  45. import net.sf.jasperreports.engine.JRException;
  46.  
  47. import net.sf.jasperreports.engine.JasperFillManager;
  48.  
  49. import net.sf.jasperreports.engine.JasperPrint;
  50.  
  51. import net.sf.jasperreports.swing.JRViewer;
  52.  
  53. import net.sf.jasperreports.view.JasperViewer;
  54.  
  55. import net.sf.jasperreports.engine.xml.JRXmlLoader;
  56.  
  57. import net.sf.jasperreports.engine.JasperCompileManager;
  58.  
  59. import net.sf.jasperreports.engine.design.JasperDesign;
  60.  
  61. import net.sf.jasperreports.engine.JasperReport;
  62.  
  63.  
  64.  
  65.  
  66. /**
  67.  *
  68.  * @author steven
  69.  */
  70. public class FrameInputUpdate10 extends javax.swing.JFrame {
  71.  
  72.     /**
  73.      * Creates new form FrameInputUpdate10
  74.      */
  75.     public FrameInputUpdate10() {
  76.         initComponents();
  77.        
  78.         Connection koneksi = null;
  79.        
  80.         Statement stmt = null;
  81.        
  82.         String query = "SELECT idpengguna,namalengkap,namapengguna,katakunci,tanggalmulai,tanggalberakhir FROM pengguna";
  83.        
  84.         String url = "jdbc:postgresql://localhost:5432/pdam";
  85.        
  86.         String user = "steven";
  87.        
  88.         String password = "kucing";
  89.        
  90.        
  91.         try {
  92.            
  93.            
  94.             koneksi = DriverManager.getConnection(url,user,password);
  95.            
  96.             stmt = koneksi.createStatement();
  97.            
  98.             ResultSet rs = stmt.executeQuery(query);
  99.            
  100.             ResultSetMetaData rsmd = rs.getMetaData();
  101.            
  102.             Vector<Vector> coba2 = new Vector<Vector>();
  103.            
  104.            
  105.             while(rs.next()){
  106.            
  107.                
  108.                 DateFormat terformat1 = new SimpleDateFormat("EEEE, dd MMMM yyyy");
  109.                
  110.                 Date tanggalMulai = rs.getDate("tanggalmulai");
  111.                
  112.                 Date tanggalBerakhir = rs.getDate("tanggalberakhir");
  113.                
  114.                 String tanggal1 = terformat1.format(tanggalMulai);
  115.                
  116.                 String tanggal2 = terformat1.format(tanggalBerakhir);
  117.                
  118.                
  119.                 Vector<String> isiBaris = new Vector<String>();
  120.                
  121.                 isiBaris.add(rs.getString("idpengguna"));
  122.                
  123.                 isiBaris.add(rs.getString("namalengkap"));
  124.                
  125.                 isiBaris.add(rs.getString("namapengguna"));
  126.                
  127.                 isiBaris.add(rs.getString("katakunci"));
  128.                
  129.                 isiBaris.add(tanggal1);
  130.                
  131.                 isiBaris.add(tanggal2);
  132.                
  133.                
  134.                 coba2.add(isiBaris);
  135.                
  136.                 Vector<String> namaKolom = new Vector<String>();
  137.                
  138.                 namaKolom.addElement(rsmd.getColumnLabel(1));
  139.                
  140.                 namaKolom.addElement(rsmd.getColumnLabel(2));
  141.                
  142.                 namaKolom.addElement(rsmd.getColumnLabel(3));
  143.                
  144.                 namaKolom.addElement(rsmd.getColumnLabel(4));
  145.                
  146.                 namaKolom.addElement(rsmd.getColumnLabel(5));
  147.                
  148.                 namaKolom.addElement(rsmd.getColumnLabel(6));
  149.                
  150.                
  151.                 DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  152.                
  153.                 jTable1.setModel(tabel1);
  154.                
  155.                 koneksi.close();
  156.                
  157.                
  158.             }
  159.            
  160.            
  161.         }catch (SQLException ex) {
  162.            
  163.            
  164.             ex.printStackTrace();
  165.         }
  166.        
  167.        
  168.        
  169.     }
  170.  
  171.     /**
  172.      * This method is called from within the constructor to initialize the form.
  173.      * WARNING: Do NOT modify this code. The content of this method is always
  174.      * regenerated by the Form Editor.
  175.      */
  176.     @SuppressWarnings("unchecked")
  177.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  178.     private void initComponents() {
  179.  
  180.         jLabel1 = new javax.swing.JLabel();
  181.         jTextField1 = new javax.swing.JTextField();
  182.         jLabel2 = new javax.swing.JLabel();
  183.         jTextField2 = new javax.swing.JTextField();
  184.         jLabel3 = new javax.swing.JLabel();
  185.         jTextField3 = new javax.swing.JTextField();
  186.         jLabel4 = new javax.swing.JLabel();
  187.         jTextField4 = new javax.swing.JTextField();
  188.         jLabel5 = new javax.swing.JLabel();
  189.         jDateChooser1 = new com.toedter.calendar.JDateChooser();
  190.         jLabel6 = new javax.swing.JLabel();
  191.         jDateChooser2 = new com.toedter.calendar.JDateChooser();
  192.         jScrollPane1 = new javax.swing.JScrollPane();
  193.         jTable1 = new javax.swing.JTable();
  194.         jButton1 = new javax.swing.JButton();
  195.         jButton2 = new javax.swing.JButton();
  196.         jButton3 = new javax.swing.JButton();
  197.         jButton4 = new javax.swing.JButton();
  198.         jButton5 = new javax.swing.JButton();
  199.  
  200.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  201.  
  202.         jLabel1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  203.         jLabel1.setText("ID Pengguna");
  204.  
  205.         jTextField1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  206.         jTextField1.setEnabled(false);
  207.  
  208.         jLabel2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  209.         jLabel2.setText("Nama Lengkap");
  210.         jLabel2.setToolTipText("");
  211.  
  212.         jTextField2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  213.  
  214.         jLabel3.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  215.         jLabel3.setText("Nama Pengguna");
  216.  
  217.         jTextField3.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  218.  
  219.         jLabel4.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  220.         jLabel4.setText("Kata Kunci");
  221.  
  222.         jTextField4.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  223.  
  224.         jLabel5.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  225.         jLabel5.setText("Tanggal Mulai");
  226.  
  227.         jDateChooser1.setDateFormatString("EEEE, dd MMMM yyyy");
  228.         jDateChooser1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  229.  
  230.         jLabel6.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  231.         jLabel6.setText("Tanggal Berakhir");
  232.  
  233.         jDateChooser2.setDateFormatString("EEEE, dd MMMM yyyy");
  234.         jDateChooser2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  235.  
  236.         jTable1.setModel(new javax.swing.table.DefaultTableModel(
  237.             new Object [][] {
  238.                 {null, null, null, null},
  239.                 {null, null, null, null},
  240.                 {null, null, null, null},
  241.                 {null, null, null, null}
  242.             },
  243.             new String [] {
  244.                 "Title 1", "Title 2", "Title 3", "Title 4"
  245.             }
  246.         ));
  247.         jScrollPane1.setViewportView(jTable1);
  248.  
  249.         jButton1.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  250.         jButton1.setText("Simpan");
  251.         jButton1.addActionListener(new java.awt.event.ActionListener() {
  252.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  253.                 jButton1ActionPerformed(evt);
  254.             }
  255.         });
  256.  
  257.         jButton2.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  258.         jButton2.setText("Edit");
  259.         jButton2.addActionListener(new java.awt.event.ActionListener() {
  260.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  261.                 jButton2ActionPerformed(evt);
  262.             }
  263.         });
  264.  
  265.         jButton3.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  266.         jButton3.setText("Simpan Ulang");
  267.         jButton3.addActionListener(new java.awt.event.ActionListener() {
  268.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  269.                 jButton3ActionPerformed(evt);
  270.             }
  271.         });
  272.  
  273.         jButton4.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  274.         jButton4.setText("Hapus");
  275.         jButton4.addActionListener(new java.awt.event.ActionListener() {
  276.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  277.                 jButton4ActionPerformed(evt);
  278.             }
  279.         });
  280.  
  281.         jButton5.setFont(new java.awt.Font("Cantarell", 1, 15)); // NOI18N
  282.         jButton5.setText("Cetak Laporan");
  283.         jButton5.addActionListener(new java.awt.event.ActionListener() {
  284.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  285.                 jButton5ActionPerformed(evt);
  286.             }
  287.         });
  288.  
  289.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  290.         getContentPane().setLayout(layout);
  291.         layout.setHorizontalGroup(
  292.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  293.             .addGroup(layout.createSequentialGroup()
  294.                 .addContainerGap()
  295.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  296.                     .addGroup(layout.createSequentialGroup()
  297.                         .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 867, Short.MAX_VALUE)
  298.                         .addContainerGap())
  299.                     .addGroup(layout.createSequentialGroup()
  300.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  301.                             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  302.                                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  303.                                     .addComponent(jLabel1)
  304.                                     .addComponent(jLabel2)
  305.                                     .addComponent(jLabel3)
  306.                                     .addComponent(jLabel4))
  307.                                 .addGap(27, 27, 27))
  308.                             .addGroup(layout.createSequentialGroup()
  309.                                 .addComponent(jLabel5)
  310.                                 .addGap(42, 42, 42))
  311.                             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  312.                                 .addComponent(jLabel6)
  313.                                 .addGap(18, 18, 18)))
  314.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  315.                             .addComponent(jDateChooser2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  316.                             .addComponent(jTextField2)
  317.                             .addComponent(jTextField1)
  318.                             .addComponent(jTextField3)
  319.                             .addComponent(jTextField4)
  320.                             .addComponent(jDateChooser1, javax.swing.GroupLayout.DEFAULT_SIZE, 491, Short.MAX_VALUE))
  321.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  322.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  323.                             .addComponent(jButton2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
  324.                             .addComponent(jButton1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
  325.                             .addComponent(jButton4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
  326.                             .addComponent(jButton5, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
  327.                             .addComponent(jButton3, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
  328.                         .addGap(21, 21, 21))))
  329.         );
  330.         layout.setVerticalGroup(
  331.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  332.             .addGroup(layout.createSequentialGroup()
  333.                 .addGap(17, 17, 17)
  334.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  335.                     .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
  336.                     .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
  337.                     .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 43, javax.swing.GroupLayout.PREFERRED_SIZE))
  338.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  339.                     .addGroup(layout.createSequentialGroup()
  340.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  341.                         .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
  342.                         .addGap(9, 9, 9)
  343.                         .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
  344.                         .addGap(12, 12, 12))
  345.                     .addGroup(layout.createSequentialGroup()
  346.                         .addGap(5, 5, 5)
  347.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  348.                             .addGroup(layout.createSequentialGroup()
  349.                                 .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
  350.                                 .addGap(9, 9, 9)
  351.                                 .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE))
  352.                             .addGroup(layout.createSequentialGroup()
  353.                                 .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 43, javax.swing.GroupLayout.PREFERRED_SIZE)
  354.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  355.                                 .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 51, javax.swing.GroupLayout.PREFERRED_SIZE)))
  356.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
  357.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  358.                     .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)
  359.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  360.                         .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
  361.                         .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)))
  362.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  363.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  364.                     .addGroup(layout.createSequentialGroup()
  365.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  366.                             .addComponent(jDateChooser1, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
  367.                             .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE))
  368.                         .addGap(18, 18, 18)
  369.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  370.                             .addComponent(jDateChooser2, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
  371.                             .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE)))
  372.                     .addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 48, javax.swing.GroupLayout.PREFERRED_SIZE))
  373.                 .addGap(18, 18, 18)
  374.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 287, javax.swing.GroupLayout.PREFERRED_SIZE)
  375.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  376.         );
  377.  
  378.         pack();
  379.     }// </editor-fold>                        
  380.  
  381.     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  382.         // TODO add your handling code here:
  383.        
  384.         // Source code untuk tombol Simpan Data
  385.        
  386.        
  387.         String namaLengkap = jTextField2.getText();
  388.        
  389.         String namaPengguna = jTextField3.getText();
  390.        
  391.         String kataKunci = jTextField4.getText();
  392.        
  393.         java.sql.Date tanggalMulai = new java.sql.Date(jDateChooser1.getDate().getTime());
  394.        
  395.         java.sql.Date tanggalBerakhir = new java.sql.Date(jDateChooser2.getDate().getTime());
  396.        
  397.        
  398.         Connection koneksi = null;
  399.        
  400.         Statement stmt = null;
  401.        
  402.         PreparedStatement PSInsert = null;
  403.        
  404.         String query = "SELECT idpengguna,namalengkap,namapengguna,katakunci,tanggalmulai,tanggalberakhir FROM pengguna";
  405.        
  406.         String masukanData = "INSERT INTO pengguna" + "(namalengkap,namapengguna,katakunci,tanggalmulai,tanggalberakhir)VALUES" + "(?,?,?,?,?)";
  407.        
  408.        
  409.         String url = "jdbc:postgresql://localhost:5432/pdam";
  410.        
  411.         String user = "steven";
  412.        
  413.         String password = "kucing";
  414.        
  415.        
  416.         try{
  417.            
  418.            
  419.             koneksi = DriverManager.getConnection(url,user,password);
  420.            
  421.             PSInsert = koneksi.prepareStatement(masukanData);
  422.            
  423.             PSInsert.setString(1, namaLengkap);
  424.            
  425.             PSInsert.setString(2, namaPengguna);
  426.            
  427.             PSInsert.setString(3, kataKunci);
  428.            
  429.             PSInsert.setDate(4, tanggalMulai);
  430.            
  431.             PSInsert.setDate(5, tanggalBerakhir);
  432.            
  433.            
  434.             PSInsert.executeUpdate();
  435.            
  436.            
  437.             stmt = koneksi.createStatement();
  438.            
  439.             ResultSet rs = stmt.executeQuery(query);
  440.            
  441.             ResultSetMetaData rsmd = rs.getMetaData();
  442.            
  443.            
  444.            
  445.             Vector<Vector> coba2 = new Vector<Vector>();
  446.            
  447.             while(rs.next()){
  448.            
  449.             DateFormat terformat1 = new SimpleDateFormat("EEEE, dd MMMM yyyy");
  450.            
  451.             Date tanggalMulai2 = rs.getDate("tanggalmulai");
  452.            
  453.             String tanggalMulai3 = terformat1.format(tanggalMulai2);
  454.            
  455.            
  456.             Date tanggalBerakhir2 = rs.getDate("tanggalberakhir");
  457.            
  458.             String tanggalBerakhir3 = terformat1.format(tanggalBerakhir2);
  459.            
  460.            
  461.             Vector<String> isiBaris = new Vector<String>();
  462.            
  463.             isiBaris.add(rs.getString("idpengguna"));
  464.            
  465.             isiBaris.add(rs.getString("namalengkap"));
  466.            
  467.             isiBaris.add(rs.getString("namapengguna"));
  468.            
  469.             isiBaris.add(rs.getString("katakunci"));
  470.            
  471.             isiBaris.add(tanggalMulai3);
  472.            
  473.             isiBaris.add(tanggalBerakhir3);
  474.            
  475.            
  476.             coba2.add(isiBaris);
  477.            
  478.            
  479.             Vector<String> namaKolom = new Vector<String>();
  480.            
  481.             namaKolom.addElement(rsmd.getColumnLabel(1));
  482.            
  483.             namaKolom.addElement(rsmd.getColumnLabel(2));
  484.            
  485.             namaKolom.addElement(rsmd.getColumnLabel(3));
  486.            
  487.             namaKolom.addElement(rsmd.getColumnLabel(4));
  488.            
  489.             namaKolom.addElement(rsmd.getColumnLabel(5));
  490.            
  491.             namaKolom.addElement(rsmd.getColumnLabel(6));
  492.            
  493.            
  494.            
  495.             DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  496.            
  497.            
  498.             jTable1.setModel(tabel1);
  499.            
  500.            
  501.             koneksi.close();
  502.            
  503.            
  504.             jTextField1.setText("");
  505.            
  506.             jTextField2.setText("");
  507.            
  508.             jTextField3.setText("");
  509.            
  510.             jTextField4.setText("");
  511.            
  512.             jDateChooser1.setDate(null);
  513.            
  514.             jDateChooser2.setDate(null);
  515.            
  516.            
  517.            
  518.             }
  519.            
  520.            
  521.         }catch (SQLException ex){
  522.            
  523.             ex.printStackTrace();
  524.            
  525.            
  526.            
  527.            
  528.            
  529.         }
  530.        
  531.        
  532.     }                                        
  533.  
  534.     private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  535.         // TODO add your handling code here:
  536.        
  537.        
  538.         try {
  539.            
  540.            
  541.             DefaultTableModel tm = (DefaultTableModel)jTable1.getModel();
  542.            
  543.             int editData = jTable1.getSelectedRow();
  544.            
  545.            
  546.             jTextField1.setText(tm.getValueAt(editData, 0).toString());
  547.            
  548.             jTextField2.setText(tm.getValueAt(editData, 1).toString());
  549.            
  550.             jTextField3.setText(tm.getValueAt(editData, 2).toString());
  551.            
  552.             jTextField4.setText(tm.getValueAt(editData, 3).toString());
  553.            
  554.            
  555.             DateFormat terformat1 = new SimpleDateFormat("EEEE, dd MMMM yyyy");
  556.            
  557.             String tanggalMulai1 = tm.getValueAt(editData, 4).toString();
  558.            
  559.             String tanggalBerakhir1 = tm.getValueAt(editData, 5).toString();
  560.            
  561.            
  562.             Date tanggalMulai2 = terformat1.parse(tanggalMulai1);
  563.            
  564.             Date tanggalBerakhir2 = terformat1.parse(tanggalBerakhir1);
  565.            
  566.            
  567.             jDateChooser1.setDate(tanggalMulai2);
  568.            
  569.             jDateChooser2.setDate(tanggalBerakhir2);
  570.            
  571.            
  572.         }catch(Exception ex)
  573.            
  574.         { JOptionPane.showMessageDialog(null, "Error: "+ex);
  575.            
  576.            
  577.         }
  578.        
  579.        
  580.     }                                        
  581.  
  582.     private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  583.         // TODO add your handling code here:
  584.        
  585.        
  586.         String idTanggal = jTextField1.getText();
  587.        
  588.         Integer idTanggal2 = Integer.valueOf(idTanggal);
  589.        
  590.         String namaLengkap = jTextField2.getText();
  591.        
  592.         String namaPengguna = jTextField3.getText();
  593.        
  594.         String kataKunci = jTextField4.getText();
  595.        
  596.        
  597.         java.sql.Date tanggalMulai = new java.sql.Date(jDateChooser1.getDate().getTime());
  598.        
  599.         java.sql.Date tanggalBerakhir = new java.sql.Date(jDateChooser2.getDate().getTime());
  600.        
  601.        
  602.         Connection koneksi = null;
  603.        
  604.         Statement stmt = null;
  605.        
  606.         PreparedStatement PSUpdate = null;
  607.        
  608.         String query = "SELECT idpengguna,namalengkap,namapengguna,katakunci,tanggalmulai,tanggalberakhir FROM pengguna";
  609.        
  610.         String updateData = "UPDATE pengguna SET namalengkap = ?, namapengguna = ?, katakunci = ?, tanggalmulai = ?, tanggalberakhir = ? WHERE idpengguna = ?";
  611.        
  612.         String url = "jdbc:postgresql://localhost:5432/pdam";
  613.        
  614.         String user = "steven";
  615.        
  616.         String password = "kucing";
  617.        
  618.        
  619.         try {
  620.            
  621.            
  622.             koneksi = DriverManager.getConnection(url,user,password);
  623.            
  624.             PSUpdate = koneksi.prepareStatement(updateData);
  625.            
  626.             PSUpdate.setString(1, namaLengkap);
  627.            
  628.             PSUpdate.setString(2, namaPengguna);
  629.            
  630.             PSUpdate.setString(3, kataKunci);
  631.            
  632.             PSUpdate.setDate(4, tanggalMulai);
  633.            
  634.             PSUpdate.setDate(5, tanggalBerakhir);
  635.            
  636.             PSUpdate.setInt(6, idTanggal2);
  637.            
  638.            
  639.             PSUpdate.executeUpdate();
  640.            
  641.            
  642.             stmt = koneksi.createStatement();
  643.            
  644.             ResultSet rs = stmt.executeQuery(query);
  645.            
  646.             ResultSetMetaData rsmd = rs.getMetaData();
  647.            
  648.            
  649.            
  650.             Vector<Vector> coba2 = new Vector<Vector>();
  651.            
  652.             while(rs.next()){
  653.                
  654.                
  655.                 DateFormat terformat1 = new SimpleDateFormat("EEEE, dd MMMM yyyy");
  656.                
  657.                 Date tanggalMulai2 = rs.getDate("tanggalmulai");
  658.                
  659.                 String tanggalMulai3 = terformat1.format(tanggalMulai2);
  660.                
  661.                
  662.                
  663.                 Date tanggalBerakhir2 = rs.getDate("tanggalberakhir");
  664.                
  665.                 String tanggalBerakhir3 = terformat1.format(tanggalBerakhir2);
  666.                
  667.                
  668.                
  669.                 Vector<String> isiBaris = new Vector<String>();
  670.                
  671.                 isiBaris.add(rs.getString("idpengguna"));
  672.                
  673.                 isiBaris.add(rs.getString("namalengkap"));
  674.                
  675.                 isiBaris.add(rs.getString("namapengguna"));
  676.                
  677.                 isiBaris.add(rs.getString("katakunci"));
  678.                
  679.                
  680.                 isiBaris.add(tanggalMulai3);
  681.                
  682.                 isiBaris.add(tanggalBerakhir3);
  683.                
  684.                 coba2.add(isiBaris);
  685.                
  686.                
  687.                 Vector<String> namaKolom = new Vector<String>();
  688.                
  689.                 namaKolom.addElement(rsmd.getColumnLabel(1));
  690.                
  691.                 namaKolom.addElement(rsmd.getColumnLabel(2));
  692.                
  693.                 namaKolom.addElement(rsmd.getColumnLabel(3));
  694.                
  695.                 namaKolom.addElement(rsmd.getColumnLabel(4));
  696.                
  697.                 namaKolom.addElement(rsmd.getColumnLabel(5));
  698.                
  699.                 namaKolom.addElement(rsmd.getColumnLabel(6));
  700.                
  701.                
  702.                 DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  703.                
  704.                 jTable1.setModel(tabel1);
  705.                
  706.                
  707.                 koneksi.close();
  708.                
  709.                
  710.                 jTextField1.setText("");
  711.                 jTextField2.setText("");
  712.                 jTextField3.setText("");
  713.                 jTextField4.setText("");
  714.                 jDateChooser1.setDate(null);
  715.                 jDateChooser2.setDate(null);
  716.                
  717.                
  718.             }
  719.            
  720.         }catch (SQLException ex){
  721.            
  722.             ex.printStackTrace();
  723.            
  724.            
  725.         }
  726.        
  727.        
  728.     }                                        
  729.  
  730.     private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  731.         // TODO add your handling code here:
  732.        
  733.         String idPengguna = jTextField1.getText();
  734.        
  735.         Integer idPengguna2 = Integer.valueOf(idPengguna);
  736.        
  737.         String namaLengkap = jTextField2.getText();
  738.        
  739.         String namaPengguna = jTextField3.getText();
  740.        
  741.         String kataKunci = jTextField4.getText();
  742.        
  743.        
  744.         java.sql.Date tanggalMulai = new java.sql.Date(jDateChooser1.getDate().getTime());
  745.        
  746.         java.sql.Date tanggalBerakhir = new java.sql.Date(jDateChooser1.getDate().getTime());
  747.        
  748.        
  749.        
  750.         Connection koneksi = null;
  751.        
  752.         Statement stmt = null;
  753.        
  754.         PreparedStatement PSHapus = null;
  755.        
  756.        
  757.         String query = "SELECT idpengguna,namalengkap,namapengguna,katakunci,tanggalmulai,tanggalberakhir FROM pengguna";
  758.        
  759.         String hapusData = "DELETE FROM pengguna WHERE idpengguna = ?";
  760.        
  761.         String url = "jdbc:postgresql://localhost:5432/pdam";
  762.        
  763.         String user = "steven";
  764.        
  765.         String password = "kucing";
  766.        
  767.        
  768.        
  769.         try {
  770.            
  771.            
  772.             koneksi = DriverManager.getConnection(url,user,password);
  773.            
  774.             PSHapus = koneksi.prepareStatement(hapusData);
  775.            
  776.             PSHapus.setInt(1, idPengguna2);
  777.            
  778.            
  779.             PSHapus.executeUpdate();
  780.            
  781.            
  782.             stmt = koneksi.createStatement();
  783.            
  784.             ResultSet rs = stmt.executeQuery(query);
  785.            
  786.             ResultSetMetaData rsmd = rs.getMetaData();
  787.            
  788.            
  789.            
  790.             Vector<Vector> coba2 = new Vector<Vector>();
  791.            
  792.             while(rs.next()){
  793.                
  794.                
  795.                 DateFormat terformat1 = new SimpleDateFormat("EEEE, dd MMMM yyyy");
  796.                
  797.                 Date tanggalMulai2 = rs.getDate("tanggalmulai");
  798.                
  799.                 String tanggalMulai3 = terformat1.format(tanggalMulai2);
  800.                
  801.                
  802.                 Date tanggalBerakhir2 = rs.getDate("tanggalberakhir");
  803.                
  804.                 String tanggalBerakhir3 = terformat1.format(tanggalBerakhir2);
  805.                
  806.                
  807.                 Vector<String> isiBaris = new Vector<String>();
  808.                
  809.                 isiBaris.add(rs.getString("idpengguna"));
  810.                
  811.                 isiBaris.add(rs.getString("namalengkap"));
  812.                
  813.                 isiBaris.add(rs.getString("namapengguna"));
  814.                
  815.                 isiBaris.add(rs.getString("katakunci"));
  816.                
  817.                
  818.                 isiBaris.add(tanggalMulai3);
  819.                
  820.                 isiBaris.add(tanggalBerakhir3);
  821.                
  822.                
  823.                 coba2.add(isiBaris);
  824.                
  825.                
  826.                 Vector<String> namaKolom = new Vector<String>();
  827.                
  828.                
  829.                 namaKolom.addElement(rsmd.getColumnLabel(1));
  830.                
  831.                 namaKolom.addElement(rsmd.getColumnLabel(2));
  832.                
  833.                 namaKolom.addElement(rsmd.getColumnLabel(3));
  834.                
  835.                 namaKolom.addElement(rsmd.getColumnLabel(4));
  836.                
  837.                 namaKolom.addElement(rsmd.getColumnLabel(5));
  838.                
  839.                 namaKolom.addElement(rsmd.getColumnLabel(6));
  840.                
  841.                
  842.                 DefaultTableModel tabel1 = new DefaultTableModel(coba2,namaKolom);
  843.                
  844.                 jTable1.setModel(tabel1);
  845.                
  846.                
  847.                 koneksi.close();
  848.                
  849.                
  850.                 jTextField1.setText("");
  851.                
  852.                 jTextField2.setText("");
  853.                
  854.                 jTextField3.setText("");
  855.                
  856.                 jTextField4.setText("");
  857.                
  858.                 jDateChooser1.setDate(null);
  859.                
  860.                 jDateChooser2.setDate(null);
  861.                
  862.                
  863.                
  864.             }
  865.            
  866.         }catch (SQLException ex){
  867.            
  868.             ex.printStackTrace();
  869.         }
  870.        
  871.        
  872.     }                                        
  873.  
  874.     private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {                                        
  875.         // TODO add your handling code here:
  876.        
  877.        
  878.         // Cetak Laporan
  879.        
  880.         Connection koneksi = null;
  881.        
  882.         String url = "jdbc:postgresql://localhost:5432/pdam";
  883.        
  884.         String user = "steven";
  885.        
  886.         String password = "kucing";
  887.        
  888.        
  889.        
  890.         try{
  891.            
  892.            
  893.         koneksi = DriverManager.getConnection(url,user,password);
  894.        
  895.         JasperDesign rancanganJasper = JRXmlLoader.load("/home/steven/JavaProject/Latihan12/Latihan12/src/latihan12/LaporanFIU10.jrxml");
  896.        
  897.         JasperReport laporanJasper = JasperCompileManager.compileReport(rancanganJasper);
  898.        
  899.         JasperPrint cetakJasper = JasperFillManager.fillReport(laporanJasper, null,koneksi);
  900.        
  901.         JasperViewer.viewReport(cetakJasper);
  902.        
  903.         }catch (Exception ex){
  904.            
  905.             System.out.println("Terjadi Error : " + ex.getMessage());
  906.        
  907.     }
  908.        
  909.     }                                        
  910.  
  911.     /**
  912.      * @param args the command line arguments
  913.      */
  914.     public static void main(String args[]) {
  915.         /* Set the Nimbus look and feel */
  916.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  917.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  918.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  919.          */
  920.         try {
  921.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  922.                 if ("Nimbus".equals(info.getName())) {
  923.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  924.                     break;
  925.                 }
  926.             }
  927.         } catch (ClassNotFoundException ex) {
  928.             java.util.logging.Logger.getLogger(FrameInputUpdate10.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  929.         } catch (InstantiationException ex) {
  930.             java.util.logging.Logger.getLogger(FrameInputUpdate10.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  931.         } catch (IllegalAccessException ex) {
  932.             java.util.logging.Logger.getLogger(FrameInputUpdate10.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  933.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  934.             java.util.logging.Logger.getLogger(FrameInputUpdate10.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  935.         }
  936.         //</editor-fold>
  937.  
  938.         /* Create and display the form */
  939.         java.awt.EventQueue.invokeLater(new Runnable() {
  940.             public void run() {
  941.                 new FrameInputUpdate10().setVisible(true);
  942.             }
  943.         });
  944.     }
  945.  
  946.     // Variables declaration - do not modify                    
  947.     private javax.swing.JButton jButton1;
  948.     private javax.swing.JButton jButton2;
  949.     private javax.swing.JButton jButton3;
  950.     private javax.swing.JButton jButton4;
  951.     private javax.swing.JButton jButton5;
  952.     private com.toedter.calendar.JDateChooser jDateChooser1;
  953.     private com.toedter.calendar.JDateChooser jDateChooser2;
  954.     private javax.swing.JLabel jLabel1;
  955.     private javax.swing.JLabel jLabel2;
  956.     private javax.swing.JLabel jLabel3;
  957.     private javax.swing.JLabel jLabel4;
  958.     private javax.swing.JLabel jLabel5;
  959.     private javax.swing.JLabel jLabel6;
  960.     private javax.swing.JScrollPane jScrollPane1;
  961.     private javax.swing.JTable jTable1;
  962.     private javax.swing.JTextField jTextField1;
  963.     private javax.swing.JTextField jTextField2;
  964.     private javax.swing.JTextField jTextField3;
  965.     private javax.swing.JTextField jTextField4;
  966.     // End of variables declaration                  
  967. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement