Import File Excel Ke Database MySQL dengan Java

Setelah membahas bagaimana melakukan export data dari database ke file excel rasanya kurang komplit jika tidak membahas bagaimana melakukan Import data yang ada di file excel ke tabel yang ada didatabase. Fasilitas semacam ini akan sangat bermanfaat untuk pengguna aplikasi semisal jika ingin mengimport ribuan atau bahkan jutaan data yang telah tersimpan di file excel kedalam database sehingga user tidak akan membuang waktu untuk menginputkan datanya satu persatu.

Seperti halnya proses export, untuk membuat Fasilitas Import data kita juga membutuhkan Library Tambahan. Dalam hal ini kita masih menggunakan Library Apache Poi yang dapat anda download pada postingan sebelumnya disini

1. Seperti Biasa Silahkan Tambahkan Terlebih dahulu Librarynya kedalam Projek anda.

Import File Excel Ke Database MySQL dengan Java

2. Berikutnya, Import terlebih dahulu beberapa Library Berikut 
import java.io.*;
import java.util.Iterator;
import java.util.ArrayList;
//Apache POI Libraries
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
// Koneksi SQL
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
3. Untuk Coding Import Data File Excel ke Database MySQL saya menggunakan beberapa baris script berikut yang saya rangkum didalam sebuah class dengan nama import_data
public class import_data {

Connection con;
PreparedStatement ps=null;
private Statement stat;


  public Connection koneksi(){
            
      try
                {
                String conUrl="jdbc:mysql://localhost:3306/nama_db";
                String userName="root";
                String pass="pass";
                Class.forName("com.mysql.jdbc.Driver");
                con=DriverManager.getConnection(conUrl,userName,pass);
                }
                catch(SQLException s)
                {
                       System.out.print("Gagal Membuka DB");
                }
                catch(ClassNotFoundException c)
                {
                          System.out.print("Gagal Koneksi");
                }
      return con;
    }
  
  
    public Connection getConn() {
        return con;
    }
    
    public void setConn(Connection con) {
        this.con = con;
    }


public static ArrayList readExcelFile(String fileName){
    
    ArrayList cellArrayLisstHolder = new ArrayList();

    try{
    /** Creating Input Stream**/
        FileInputStream myInput = new FileInputStream(fileName);

    /** Create a POIFSFileSystem object**/
    POIFSFileSystem myFileSystem = new POIFSFileSystem(myInput);

    /** Create a workbook using the File System**/
     HSSFWorkbook myWorkBook = new HSSFWorkbook(myFileSystem);

     /** Get the first sheet from workbook**/
    HSSFSheet mySheet = myWorkBook.getSheetAt(0);

    /** We now need something to iterate through the cells.**/
      Iterator rowIter = mySheet.rowIterator();
      while(rowIter.hasNext()){
          HSSFRow myRow = (HSSFRow) rowIter.next();
          Iterator cellIter = myRow.cellIterator();
          ArrayList cellStoreArrayList=new ArrayList();
          while(cellIter.hasNext()){
              HSSFCell myCell = (HSSFCell) cellIter.next();
              cellStoreArrayList.add(myCell);
          }
          cellArrayLisstHolder.add(cellStoreArrayList);
      }
    }catch (Exception e){e.printStackTrace(); }
    return cellArrayLisstHolder;
}


public void importexcel(){
// Nama dan Path File Excel
String fileName = "D:/export.xls"; 
//Read an Excel File and Store in a ArrayList
ArrayList dataHolder=readExcelFile(fileName);

try {
String query="insert into nama_tabel (nama, jk, alamat, jurusan) values (?, ?, ?, ?)";
ps = this.koneksi().prepareStatement(query);  
int count=0;

ArrayList cellStoreArrayList=null;

//insert into database
for (int i=1;i < dataHolder.size(); i++) {
      cellStoreArrayList=(ArrayList)dataHolder.get(i);
      try{
       ps.setString(1,((HSSFCell)cellStoreArrayList.get(1)).toString());
       ps.setString(2,((HSSFCell)cellStoreArrayList.get(2)).toString());
       ps.setString(3,((HSSFCell)cellStoreArrayList.get(3)).toString());
       ps.setString(4,((HSSFCell)cellStoreArrayList.get(4)).toString());
       
       count= ps.executeUpdate();
       
      
      
      }catch (Exception e){
          
      System.out.printf("Gagal");
      
      } 
 }

System.out.print("Import Sukses !"); 
   
 } catch (SQLException ex) {
 System.out.print("Export gagal");
    }

}
}

Export Database MySQL ke File Excel dengan Java

Selain Fasilitas Backup dan Restore, terkadang kita jupa perlu menambahkan utilitas seperti Export database ke File Excel. Hal ini juga dapat kita gunakan sebagai cadangan data untuk mengantisipasi terjadinya hal yang tidak diinginkan pada data yang ada didatabase. Utilitas Export data pada tabel database ini juga akan menjadi aplikasi yang kita bangun menjadi lebih kompleks karena memiliki fitur-fitur tambahan.

Pada Bahasa pemrograman Java, untuk membuat proses Export data dari tabel yang ada ditabase menjadi file Excel kita memerlukan Library tambahan yaitu Apache Poi. Silahkan Download disini.

1. Sebelum Mulai, Silahkan tambahkan Library Apache Poi yang telah anda download kedalam projek anda. Jika menggunakan Netbeans cukup klik kanan pada Package Libraries kemudian ikuti instruksi selanjutnya.

Export Database MySQL ke File Excel dengan Java

2. Berikutnya Import terlebih dahulu Beberapa Library yang diperlukan
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;
import java.io.FileOutputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;          
3. Untuk Coding Proses Export ke File Excel, Saya membuat sebuah method simpan dimana method ini yang akan melakukan proses export sehingga nantinya kita hanya perlu memanggil nama methodnya saja untuk melakukan export data simpan();
    public void simpan(){
     try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost/nama_database","root","pass");
            Statement statement = con.createStatement();
            
            FileOutputStream fileOut;
            // Hasil Export
            fileOut = new FileOutputStream("D:/export.xls");
            HSSFWorkbook workbook = new HSSFWorkbook();
            HSSFSheet worksheet = workbook.createSheet("Sheet 0");
            
     // Nama Field
            Row row1 = worksheet.createRow((short)0);
            row1.createCell(0).setCellValue("ID");
            row1.createCell(1).setCellValue("Nama");
            row1.createCell(2).setCellValue("Nomor Telepon");
            row1.createCell(3).setCellValue("Alamat");
            row1.createCell(4).setCellValue("Tanggal");
            
            Row row2 ;
            ResultSet rs = statement.executeQuery("SELECT * FROM nama_tabel");
            while(rs.next()){
                int a = rs.getRow();
                row2 = worksheet.createRow((short)a);
                // Sesuaikan dengan Jumlah Field
                row2.createCell(0).setCellValue(rs.getString(1));
                row2.createCell(1).setCellValue(rs.getString(2));
                row2.createCell(2).setCellValue(rs.getString(3));
                row2.createCell(3).setCellValue(rs.getString(4));
                row2.createCell(4).setCellValue(rs.getString(5));
            }
            workbook.write(fileOut);
            fileOut.flush();
            fileOut.close();
            rs.close();
            statement.close();
            con.close();
            System.out.println("Export Success");
        }catch(ClassNotFoundException e){
            System.out.println(e);
        }catch(SQLException ex){
            System.out.println(ex);
        }catch(IOException ioe){
            System.out.println(ioe);
        }

    }          

Mempercantik Tampilan Java dengan JTatto

Urusan tampilan bisa dikatakan memang merupakan hal yang cukup vital dalam memangun sebuah program. Pasalnya, Tampilan program yang kita buat juga akan mempengaruhi kenyamanan user dalam menggunakan program kita. Hal ini tentu menjadi PR tersendiri bagi seorang programmer guna membuat tampilan aplikasi yang lebih user friendly. Pada postingan kali ini saya ingin berbagi trik bagaimana merubah tampilan aplikasi yang kita bangun dengan java dengan memanfaatkan library JTatto.

JTatto adalah library yang dapat kita gunakan dengan bebas karena masih bersifta free. selain itu JTatto sendiri memiliki cukup banyak Thema yang bisa kita gunakan. sebelum kita mulai silahkan download library JTatto disini.

1. Seperti biasa sebelum kita mulai silahkan tambahkan library yang telah anda download kedalam projek anda. disini saya menggunakan Netbeans

Mempercantik Tampilan Java dengan JTatto

2. Untuk menggunakan JTatto silahkan Import beberapa Library berikut  
import com.jtattoo.plaf.fast.FastLookAndFeel;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
3. Terakhir, Tambahkan code berikut pada Method main anda.
 try { 
                    UIManager.setLookAndFeel(new FastLookAndFeel()); 
                    // Frame atau Class yang akan dijalankan
                     new FormTrik().setVisible(true);
                     // Jika Tidak Support
                    } catch (UnsupportedLookAndFeelException ex) { 
                    JOptionPane.showMessageDialog(null,"Sistem Operasi Anda Tidak Mendukung Tampilan Aplikasi ini, Tampilan Akan Berubah Menjadi Default..","Perhatian",JOptionPane.ERROR_MESSAGE);
                    }             
Untuk mengganti tampilan dengan Theme yang lain silahkan atur pada code seperti pada gambar berikut

Mempercantik Tampilan Java dengan JTatto

Itu Sedikit trik dari saya semoga bermanfaat. Happy Coding. :)

Menambahkan Date Picker di Java Netbeans

Komponen datepicker akan sangat membantu pada aplikasi yang kita bangun lebih-lebih pada aplikasi yang memerlukan inputan tanggal semisal aplikasi pendaftaran, aplikasi penyewaan buku (aplikasi perpustakaan) dan semacamnya. Secara Default, jika menggunakan IDE Netbeans komponen Date picker belum tersedia oleh karena kita perlu menambahkan library datepicker ini sebelum dapat menggunakannya. silahkan download libarari jcalendar disini.

Langkah Menambahkan JCalendar ke Netbeans

1. Klik kanan pada Pakcage Libraries | Add Jar / Folder | Pilih Library (File Jar) yang telah anda download sebelumnya

Menambahkan Date Picker di Java Netbeans

2. Langkah Selanjutnya adalah proses menambahkan komponen JCalendar kedalam daftar komponen (Pallete) yang ada di Netbeans agar kita dapat menggunakannya. Klik kanan pada Pallete Netbeans | Pilih Pallete Manager lalu ikuti langkah yang ada pada gambar dibawah ini

Menambahkan Date Picker di Java Netbeans

Menambahkan Date Picker di Java Netbeans

Pada gambar dibawah Cari Library (File Jar) yang telah anda download sebelumnya

Menambahkan Date Picker di Java Netbeans

Pilih Komponen dari Library JCalendar yang ingin anda tambahkan ke Pallete Netbeans. Pada contoh ini saya hanya menambahkan komponen jdatechooser

Menambahkan Date Picker di Java Netbeans

Pilih Lokasi tempat komponen JDateChooser akan diletakkan. disini saya memilih Pallete Swing Control

Menambahkan Date Picker di Java Netbeans

Menambahkan Date Picker di Java Netbeans

Cara Mengambil Inputan dari JDatechooser atau Date time Picker di Java Netbeans

Setelah menambahkan komponen JCalendar di IDE netbeans rasanya kurang komplit jika saya tidak memabahas bagaimana mengambil inputan dari komponen JDatechooser agar nantinya bisa juga kita simpan kedalam database. 

Menambahkan Date Picker di Java Netbeans

1. Langkah pertama silahkan tambahkan komponen JDateChooser kedalam JFrame anda. Tambahkan pula sebuah JButton dan sebuah JTextField untuk menampilkan outputnya

Berikutnya Import Library Simple Date Format 
import java.text.SimpleDateFormat;
Setelah itu Klik dua kali pada komponen JButton yang telah anda tambahkan kemudian tambahkan coding berikut. Hasilnya dapat anda lihat pada gambar diatas. Happy coding :)
  SimpleDateFormat sdf;
        sdf = new SimpleDateFormat("yyyy-M-d");
        jTextField1.setText(sdf.format(jDateChooser1.getDate()));
Backup dan Restore Database MySQL dengan Java

Backup dan Restore Database MySQL dengan Java

adanya fasilitas backup dan restore database pada aplikasi yang kita bangun tentu akan menjadikan program kita menjadi lebih user friendly sebab terkadang memang perlu membuat suatu backup dari data yang kita miliki untuk mencegah terjadinya hal-hal yang tidak diinginkan semisal data corrupt atau yang lain. Fasilitas backup data akan membantu user untuk membuat salinan dari database yang disimpan dalam sebuah file *.sql sedangkan fasilitas restore memungkinkan user untuk mengembalikan data dari hasil backup ke database.

Pada contoh ini saya masih menggunakan contoh projek sebelumnya. Untuk membuat proses bacukp sendiri dapat kita lakukan dengan memanggil file binary dari mysql yaitu mysqldump.exe. karena disini saya menggunakan xampp maka lokasi file mysqldump-nya berada di C:\xampp\mysql\bin pada folder tersebut terdapat bebeapa file binary termasuk mysqldump.exe adapun coding backup yang sering saya gunakan seperti berikut
Process p = null;
 try {
 Runtime runtime = Runtime.getRuntime();
// Jika MySQL Tanpa Password
 p = runtime.exec("C:/xampp/mysql/bin/mysqldump -uroot --add-drop-database -B nama_database -r " + "D:/" + "backup" + ".sql");
// Jika MySQL Menggunakan Password
 p = runtime.exec("C:/xampp/mysql/bin/mysqldump -uroot -ppass_mysql --add-drop-database -B nama_database -r " + "D:/" + "backup_restore" + ".sql");
int processComplete = p.waitFor();

if (processComplete == 0) {
System.out.println("Backup created successfully!");
} else {
System.out.println("Could not create the backup");
}
} catch (Exception e) {
e.printStackTrace();
}
Sedikit berbeda dengan backup untuk proses restore jika menggunakan file mysql.exe yang berada di folder C:\xampp\mysql\bin adapun coding untuk proses restore ini sebagai berikut
String dbUserName="root";
String dbPassword="";
// lokasi dan file sql hasil backup
String source="D:/backup.sql";
String[] restoreCmd = new String[]{"C:/xampp/mysql/bin/mysql ", "--user=" + dbUserName, "--password=" + dbPassword, "-e", "source " + source};
 
        Process runtimeProcess;
        try {
 
            runtimeProcess = Runtime.getRuntime().exec(restoreCmd);
            int processComplete = runtimeProcess.waitFor();
 
            if (processComplete == 0) {
                System.out.println("Restored successfully!");
            } else {
                System.out.println("Could not restore the backup!");
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }

Insert Update dan Delete dengan Java dan MySQL

Dalam membangun aplikasi berbasis Database maka proses insert update dan delete data adalah proses inti dari aplikasi yang kita bangun oleh karena rasanya penting untuk memposting perihal bagaimana membuat proses input, edit dan hapus data di Java dengan Database MySQL. Pada contoh ini saya masing menggunakan contoh projek sebelumnya yang dapat anda lihat disini. tentu saja sudah saya modifikasi dengan menambahkan beberapa komponen didalamnya sehingga tampilannya menjadi seperti gambar berikut

Insert Update dan Delete dengan Java dan MySQL

Pada contoh kali ini saya membuat proses-proses seperti input, update dan delete didalam method. jadi masing-masing proses memiliki method sendiri-sendiri sehingga nantinya pada event onclick milik JButton kita hanya perlu memanggil methodnya saja. Adapun untuk coding simpan yang saya gunakan seperti dibawah ini
public void simpan() {
       Statement stat;
       String jeni_kelamin = null;
       String agama = null;
             
            
            try {
            agama = (String)jComboBox1.getSelectedItem();
   // Cek Jenis Kelamin
   if (jRadioButton1.isSelected()){
            jeni_kelamin = "Cewek";
            } else if (jRadioButton2.isSelected()){
            jeni_kelamin = "Cowok";
            }
            } catch (Exception a){
            System.out.print("Ada Kesalahan");
            }
            
            try {                             
            koneksisql simpan = new koneksisql();
            stat = simpan.koneksi().createStatement();
            String sql = "INSERT INTO data (nama,jenis_kelamin,agama,alamat)" +
                    "VALUES (?, ? , ?, ?)";
            PreparedStatement prepare = simpan.koneksi().prepareStatement(sql);
            prepare.setString(1, jTextField1.getText().toString());
            prepare.setString(2, jeni_kelamin.toString());
            prepare.setString(3, agama.toString());           
            prepare.setString(4, jTextArea1.getText().toString());
            
            try {
                prepare.executeUpdate(); 
                JOptionPane.showMessageDialog(this, "Data Sudah Tersimpan",null,JOptionPane.INFORMATION_MESSAGE);
            } catch (SQLException ex) {
                JOptionPane.showMessageDialog(this, "Data GAGAL Tersimpan",null,JOptionPane.ERROR_MESSAGE);
            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(this, "koneksi gagal",null,JOptionPane.WARNING_MESSAGE);
        }
    }
Selanjutnya untuk proses Delete, saya membuatnya agar User terlebih dahulu memilih data (Klik) yang ada pada JTable Sebelum dapat melakukan proses penghapusan data. Adapun coding hapus yang saya gunakan dapat anda lihat dibawah ini
 public void hapus(){

  Statement stat;
  // Jika Data Belum dipilih
  if (jTable1.getSelectedRow()<0){
    JOptionPane.showMessageDialog(this, "Pilih Data Pada Tabel ","Perhatian",JOptionPane.WARNING_MESSAGE);
    } else {
       
     
         try {                                         
            
            koneksisql hapus = new koneksisql();
            stat = hapus.koneksi().createStatement();
            String sql = "DELETE FROM data WHERE id=?";
            
            PreparedStatement prepare = hapus.koneksi().prepareStatement(sql);
            prepare.setString(1, jTable1.getValueAt(jTable1.getSelectedRow(),0).toString());          
            
            try {
                prepare.executeUpdate();
                JOptionPane.showMessageDialog(this, "Data Berhasil di Hapus",null,JOptionPane.INFORMATION_MESSAGE);
            } catch (SQLException ex) {
                JOptionPane.showMessageDialog(this, "hapus data gagal",null,JOptionPane.ERROR_MESSAGE);
            }
            } catch (SQLException ex) {
            JOptionPane.showMessageDialog(this, "koneksi gagal",null,JOptionPane.WARNING_MESSAGE);
            }
        }         
 }
Dan yang terakhir, untuk proses Edit atau Update data Skenarionya sama dengan Delete hanya saja ketika User memilik data pada JTable (klik) maka data yang dipilih akan ditampilkan terlebih dahulu pada komponen yang ada diatas JTable. Untuk membuat proses ini silahkan tambahkan coding berikut pada event onmouse clicked milik JTable
jTextField1.setText(jTable1.getValueAt(jTable1.getSelectedRow(),1).toString());
  jTextArea1.setText(jTable1.getValueAt(jTable1.getSelectedRow(),4).toString());
Sedangkan untuk coding Update data yang saya gunakan pada contoh ini dapat anda lihat dibawah ini
public void update(){
   Statement stat;
   String jenis_kelamin = null;
     // Jika Data Belum dipilih
  if (jTable1.getSelectedRow()<0){
    JOptionPane.showMessageDialog(this, "Pilih Data Pada Tabel ","Perhatian",JOptionPane.WARNING_MESSAGE);
    } else {
    
            if (jRadioButton1.isSelected()){
            jenis_kelamin = "Cewek";
            } else if (jRadioButton2.isSelected()){
            jenis_kelamin = "Cowok";
            }
            
   koneksisql perbarui = new koneksisql();
        
      try{
       stat =  perbarui.koneksi().createStatement();
       try{
         String sql = "UPDATE data SET nama = ?, jenis_kelamin = ?, agama = ? , alamat = ? WHERE id=?";
            
            PreparedStatement prepare = perbarui.koneksi().prepareStatement(sql);
            prepare.setString(1, jTextField1.getText());
            prepare.setString(2, jenis_kelamin.toString());
            prepare.setString(3, jComboBox1.getSelectedItem().toString());
            prepare.setString(4, jTextArea1.getText());
            prepare.setString(5, jTable1.getValueAt(jTable1.getSelectedRow(),0).toString());
            
            prepare.executeUpdate(); 
           
            JOptionPane.showMessageDialog(this, "Data Berhasil di update","Informasi",JOptionPane.INFORMATION_MESSAGE);
            
       } catch (SQLException e){
       JOptionPane.showMessageDialog(this, "gagal di update",null,JOptionPane.ERROR_MESSAGE);
       }
       
        }catch(SQLException ex){
            JOptionPane.showMessageDialog(this, "gagal di koneksi database",null,JOptionPane.ERROR_MESSAGE);
        
        }
    
  }
    }
Untuk menggunakan methodnya pada event onclick milik JButton hanya perlu memanggil nama methodnya saja suatu misal hapus(); atau simpan();

Contoh Penggunaan Dialog di Java dengan JOptionPane

Penggunaan Dialog akan sangat berguna guna menjadikan aplikasi yang kita bangun menjadi lebih user friendly. Kita dapat memanfaatkan dialog untuk memeberikan informasi yang dibutuhkan oleh user semisal informasi jika suatu aksi telah berhasil atau gagal dieksekusi. Penggunaan dialog juga dapat kita manfaatkan untuk memberikan pilihan kepada user tentang suatu hal (misal : Ye or No) serta berbagai manfaat lain. Berikut saya sharing contoh penggunaan dialog di java

Untuk membuat dialog dijava kita perlu mengimport sebuah library yaitu JOptionPane Berikut adalah contoh script penggunaan Dialog di java

1. Yes No Dialog
Contoh Penggunaan Dialog di Java dengan JOptionPane

JOptionPane.showConfirmDialog(null, "Pilih Mana Bro ?","Pertanyaan",JOptionPane.YES_NO_OPTION);
2. Input Dialog
Contoh Penggunaan Dialog di Java dengan JOptionPane

 JOptionPane.showInputDialog(rootPane, "Ini adalah Dialog Input","Masukan Data", JOptionPane.INFORMATION_MESSAGE);
3. Information Dialog
Contoh Penggunaan Dialog di Java dengan JOptionPane

 JOptionPane.showMessageDialog(rootPane, "Ini adalah dialog Informasi", "Pesan Informasi", JOptionPane.INFORMATION_MESSAGE);
4. Error Dialog
Contoh Penggunaan Dialog di Java dengan JOptionPane

 JOptionPane.showMessageDialog(rootPane, "Ini adalah dialog Error", "Pesan Error", JOptionPane.ERROR_MESSAGE);
5. Warning Dialog
Contoh Penggunaan Dialog di Java dengan JOptionPane

JOptionPane.showMessageDialog(rootPane, "Ini adalah dialog Warning", "Pesan Warning", JOptionPane.WARNING_MESSAGE);

Koneksi Java dengan Database MySQL

Dalam membangun aplikasi dengan bahasa pemrograman Java kita tidak akan pernah lepas dari penggunaan database. Sebelum membahas lebih jauh tentang penggunaan database MySQL di java pada postingan ini saya akan sedikit berbagi tentang bagaimana mengkoneksikan Database MySQL ke Java menggunakan IDE Netbeans. Sebelum kita mulai mengkoneksikan database saya asumsikan anda telah membuat sebuah database dan minimal sebuah tabel di MySQL seperti contoh berikut saya memiliki sebuah database dengan nama biodata dan tabel dengan nama data

Koneksi Java dengan Database MySQL

Langkah Koneksi Database MySQL ke Java

1. Pertama, Import Library MySQL JDBC dengan cara klik kanan pada Libraries Projek anda di Netbeans seperti gambar berikut

Koneksi Java dengan Database MySQL

Koneksi Java dengan Database MySQL

2. Setelah itu, buatlah sebuah file atau class baru dan berinama koneksisql didalam file tersebutlah kita akan melakukan koneksi ke database. Source code milik saya seperti berikut ini.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;


public class koneksisql {

   String url = "jdbc:mysql://localhost:3306/biodata"; 
    String user = "root"; 
    String pass = "root";
    private Statement statemen;
    Connection conn;
    
    public Connection koneksi(){
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            conn = DriverManager.getConnection(url, user, pass);
        } catch (Exception e) {
        }
        return conn;
    }
}
Menampilkan Data Pada Tabel Database dengan JTable

Koneksi Java dengan Database MySQL

1. Tambahkan Komponen JTable kedalam JFrame anda

2. Buatlah Beberapa Method didalam file/class koneksisql untuk menampilkan data dan mengeksekusi query ke database contoh codenya seperti berikut
   
public ResultSet exQuer(String sql){
   ResultSet rs = null;
        try {
            statemen = koneksi().createStatement();
            rs = statemen.executeQuery(sql);
        } catch (Exception ex) {
            System.out.print("Gagal");
        }
        return rs;
    }

    public int row(ResultSet rs){
        int jumlah = 0;
        try {
            while (rs.next()) {
                jumlah +=1;
            }
        } catch (Exception ex) {
        System.out.print("Gagal");
        }
        return jumlah;
    }
     public void tampilTabel(JTable table, String[]kepala, String sql){
        ResultSet rs = exQuer(sql);
        int jumlahRow = row(exQuer(sql));
        int baris = 0;
        table.setModel(new DefaultTableModel(kepala, jumlahRow));
        try {
            while (rs.next()) {
                for(int i = 0; i<kepala.length; i++){
                    table.setValueAt(rs.getString(i+1), baris, i);
                }
                baris++;
            }
        } catch (Exception ex) {
           System.out.print("Gagal");
        }
        }

    
Buat sebuah objek baru dari class koneksisql dengan nama tampil
koneksisql tampil = new koneksisql();
Yang terakhir, tambahkan code berikut didalam Construktor anda. Sesuaikan dengan Nama Tabel dan Jumlah serta nama Field didalam Tabel database anda
String[] header = {"Field1","Field2","Field3","Field4","Field5"};
tampil.tampilTabel(jTable1, header, "SELECT * FROM nama_tabel");

Cara Menjalankan File JSP atau Script Java EE

Tidak seperti file java SE yang dapat dijalankan hanya dengan JDK dan JRE maka Untuk Menjalankan File JSP atau Script Java EE kita membutuhkan Webserver. Dalam hal ini karena Apache sendiri tidak bisa menjalankan Script Java EE maka Apache mengeluarkan versi lain yang dapat menjalankan file JSP yaitu Apache Tomcat. Jika anda menggunakan Xampp sebagai control panel anda maka anda hanya perlu menjalankannya saja tanpa harus melakukan settingan ini itu.

Pada contoh ini saya akan menjalankan sebuah file dengan ekstensi *.JSP yang berisi sebuah string kalimat Saya sedang belajar Java EE seperti contoh script sederhana berikut.
<!DOCTYPE html>
<html>
<head>
 <title>Belajar Java EE</title>
</head>
<body>
 <% out.print("Belajar Java EE"); %>
</body>
</html>
Sama seperti bahasa server side scripting yang lain Pada Script tersebut dapat kita lihat bahwa Script Java EE diapit menggunakan tag <% dan %> dan disisipkan didalam tag HTML. Untuk menjalankan script sederhana diatas simpan dengan ekstensi *.JSP dan letakan didalam folder ROOT milik Apache Tomcat. Karena disini saya menggunakan Xampp maka lokasinya saya letakan di C:\xampp\tomcat\webapps\ROOT\java

Cara Menjalankan File JSP atau Script Java EE

Untuk melihat hasilnya, Buka Browser kemudian ketikan http://localhost:8080/namafile.jsp Hasil yang saya peroleh dapat anda lihat pada gambar diatas. Selamat mencoba. :)

Membuat dan Menampilkan Laporan dengan iReport di Java

Tentu kita sudah mafhum tentang pentingnya report atau laporan dalam aplikasi yang kita bangun lebih-lebih jika aplikasi yang kita bangun berbasis database. Dengan laporan kita akan dengan mudah memantau data-data yang ada pada tabel database dan berbagai macam fungsi lain yang tidak dapat saya jelaskan disini. Dengan bahasa pemrograman Java kita dapat membuat laporan dengan menggunakan Plugin tambahan yaitu iReport.

iReport atau yang juga dikenal dengan nama Jasper Report adalah Plugin milik IDE Netbeans. iReport dapat kita gunakan secara bebas karena masih bersifat Open Source. Sebelum Kita Mulai, Silahkan download Plugin iReport disini. Selain Itu, Kita juga membutuhkan Library Jar untuk dapat memanggil dan menampilkan iReport dengan JButton silahkan download disini. Proses ini cukup panjang karena terdiri dari tiga step yaitu instalasi plugin, membuat laporan dan menampilkan laporan. 

1. Instalasi Plugin iReport di Netbeans

Jalankan Netbeans anda. Klik menu Tools | Plugin | Masuk ke Tab Downloaded | Add Plugins. Pastikan anda sudah mengekstrak Plugin iReport. CTRL+A semua file *.nbm yang ada didalam folder plugin iReport Seperti Gambar Berikut

Membuat dan Menampilkan Laporan dengan iReport di Java

Membuat dan Menampilkan Laporan dengan iReport di Java

Ikuti Langkah-langkahnya seperti saat anda menginstall program aplikasi. Jika proses instalasi sudah selesai silahkan tutup terlebih dahulu netbeans anda kemudian jalankan kembali (restart). 

2. Membuat Laporan dengan iReport di Netbeans

Setelah sukses melakukan instalasi, berikutnya adalah proses membuat laporan dengan iReport. Pertama, Buat sebuah Package Baru didalam projek anda dan berinama laporan. Pada jendela Welcome Windows klik gambar drum (datasource) untuk membuat datasource baru untuk koneksi laporan ke database. 

Membuat dan Menampilkan Laporan dengan iReport di Java

Membuat dan Menampilkan Laporan dengan iReport di Java

Pada Jendela yang muncul silahkan isi Informasi database anda seperti gambar dibawah ini. Jangan Lupa Untuk Centang Save Password. Klik Test Sebelum menyimpan settingan Datasource anda. 

Membuat dan Menampilkan Laporan dengan iReport di Java

Sampai disini kita sudah berhasil membuat Datasource untuk koneksi laporan ke Database. Langkah selanjutnya adalah membuat laporan dengan iReport. Kembali ke Welcome Windows klik gambar Laporan (nomor dua) seperti gambar dibawah ini

Membuat dan Menampilkan Laporan dengan iReport di Java

Selanjutnya Pilih template untuk laporan anda. disini saya menggunakan template Cherry (hanya sebagai contoh saja) anda juga dapat menggunakan template yang lain. setelah memilih template klik button Lauch Report Wizard

Membuat dan Menampilkan Laporan dengan iReport di Java

Langkah Selanjutnya Berinama Laporan anda kemudian simpan Laporan tersebut pada Path Package Laporan yang telah dibuat sebelumnya. contohnya seperti gambar dibawah | Klik Next

Membuat dan Menampilkan Laporan dengan iReport di Java

Berikutnya inputkan Query untuk tabel yang akan dibuatkan laporan. pada contoh dibawah saya akan menampilkan data anggota pada laporan | Klik Next

Membuat dan Menampilkan Laporan dengan iReport di Java

Berikutnya pilih Field yang akan ditampilkan pada laporan nantinya. Contohnya seperti gambar dibawah ini | Klik Next

Membuat dan Menampilkan Laporan dengan iReport di Java

Pada Jendela Group By Klik Next Saja kemudian Finish. Sampai disini kita sudah berhasil membuat laporan dengan iReport. Hasil Sementara yang saya Peroleh seperti gambar berikut ini. Klik Preview jika anda ingin melihat hasil sementaranya. 

Membuat dan Menampilkan Laporan dengan iReport di Java

3. Menampilkan Laporan iReport dengan JButton

Setelah kita selesai membuat laporan langkah terakhir adalah bagaimana membuat agar laporan dapat kita panggil melalui JButton. Seperti yang telah saya katakan sebelumnya kita membutuhkan Library Tambahan jadi pastikan anda telah mendownloadnya pada link diatas. Siapkan Library tersebut kemudian Import kedalam Projek anda seperti langkah pada gambar berikut

Membuat dan Menampilkan Laporan dengan iReport di Java

Membuat dan Menampilkan Laporan dengan iReport di Java

Tambahkan Sebuah JButton kedalam JFrame anda Ubah Text menjadi Cetak Laporan. Import Beberapa Library diatas Class Anda
import java.io.File;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;
Langkah Terakhir tambahkan Code Berikut didalam JButton Cetak Laporan. Anda Perlu mengganti Method koneksi pada code cetak laporan dibawah sesuai dengan method yang anda gunakan untuk melakukan koneksi ke database.
  try {
     
      String namafile= "src/laporan/laporan.jasper"; 
      File report = new File(namafile);
      JasperReport jreprt = (JasperReport)JRLoader.loadObject(report.getPath());
      JasperPrint jprintt = JasperFillManager.fillReport(jreprt,null,new koneksisql().koneksi());
      JasperViewer.viewReport(jprintt,false);
     
    } catch (Exception e) {
    JOptionPane.showMessageDialog(null, "Gagal Membuka Laporan","Cetak Laporan",JOptionPane.ERROR_MESSAGE);
    }

Membuat dan Menampilkan Laporan dengan iReport di Java

Sebagai Catatan, Berdasarkan pengalaman saya pemanggilan Laporan dengan JButton biasanya gagal dikarenakan Lokasi Laporan (Path) tidak sesuai. Masalah yang lain bisa disebabkan karena gambar yang ada pada laporan anda atau ukuran garis pada laporan anda melebihi batas yang ditentukan. Selamat Mencoba. :)

Tips Trik Java dengan Netbeans Bagian I

Jika membuat program dengan java biasanya saya menggunakan Tools visual seperti Netbeans dan Eclipse karena dengan IDE ini kita bisa dimanjakan dengan fitur yang dimilikinya seperti Fitur Autocomplite sehingga kita tidak capek untuk ngetik coding. Untuk netbeans sendiri memiliki dua lisensi yaitu free dan pro. Dalam hal ini kita dapat memanfaatkan versi free untuk proses pembelajaran.

Jangan samakan Java dengan Netbeans sebab tentu hal ini sangat jauh berbeda. Kebanyakan pemula menganggap java adalah Netbeans dan itu salah besar. java adalah bahasa pemrograman dan netbeans hanya IDE/Editor karena netbeans juga dapat digunakan untuk PHP. Jangan salah paham lagi ya. Berikut saya sharing beberapa Trik java jika anda menggunakan Editor Netbeans.

Beberapa Trik Java dengan Menggunakan Editor Netbeans

1. Trik Pertama adalah bagiama Membuat Tampilan Jframe ditengah karena Defaultnya, Aplikasi yang dibangun dengan Java jika dijalankan formnya akan berada di pojok atas screen monitor. Namun Hal ini dapat kita ubah sesuai kehendak yang kita mau dengan beberapa baris code seperti berikut (Letakan didalam Constructor Frame). Coba Jalankan Form anda maka secara otomatis akan berada di tengah layar monitor.
setLocationRelativeTo(getRootPane());
2.Trik yang kedua adalah Membuat Jendela JFrame otomatis FullScreen jika dijalankan. Silahkan tambahkan baris code berikut jangan lupa Import Package Toolkit terlabih dahulu seperti contoh script berikut
// Import Package Toolkit
import java.awt.Toolkit;

// Letakan didalam Constructor
Toolkit tolkit = Toolkit.getDefaultToolkit();  
int lebarSize = ((int) tolkit.getScreenSize().getWidth());  
int panjangSize = ((int) tolkit.getScreenSize().getHeight());  
this.setSize(lebarSize,panjangSize); 
3. Trik Yang terakhir adalah Merubah Icon Java yang ada di JFrame. Defaultnya Icon ini adalah logo cangkir yang merupakan lambang java. Berikut adalah cara merubah Icon java dengan yang kita inginkan.
- Tambahkan Sebuah Package baru didalam SRC lalu tambahkan sebuah gambar icon didalamnya seperti gambar berikut

Tips Trik Java dengan Netbeans Bagian I

- Berikutnya adalah Tambahkan Beberapa Baris Coding didalam JFrame seperti contoh berikut
// Import Package Image Icon
import javax.swing.ImageIcon;

// Letakan didalam Constructor
ImageIcon icon = new ImageIcon ( Toolkit.getDefaultToolkit().getImage(getClass().getResource("/icon/icon.gif")));
this.setIconImage(icon.getImage());

Download Tutorial Untuk Belajar Pemrograman Java

Java adalah salah satu bahasa pemrograman yang cukup digemari oleh orang indonesia. Pasalnya Aplikasi yang dibangun dengan java mampu berjalan dengan stabil di berbagai platform berbeda (Cross Platform) seperti Linux/Unix, Windows, Mac atau Ponsel/Smartphone sekalipun. Teknologi Java Mendukung konsep pemrograman Berorientasi Objek (OOP) secara penuh.

Jika mempertimbangkan perkembangan teknologi yang semakin pesat, maka belajar pemrograman Java adalah solusi untuk masalah tersebut. Beberapa contoh program yang dikembangkan dengan teknologi Java sudah banyak kita nikmati saat ini sebut saja Aplikasi berbasis website yang digunakan oleh Bank BCA dan semacamnya. Berikut adalah gambaran bagaimana script java dapat dijalankan oleh komputer.

Download Tutorial Untuk Belajar Pemrograman Java
(sumber : haqisaurus.wordpress.com)

Menurut beberapa sumber Java diciptakan pada tahun 1990 melalui The Green Projek yang dimotori oleh Patrick Naughton, Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya dari Sun Microsystems.

Teknologi Java sendiri terbagi menjadi tiga yaitu Java SE, Java EE dan Java ME yang masing-masing ditujukan untuk keperluan yang berbeda-beda. Java SE (Second Edition) ditujukan untuk keperluan seperti membuat aplikasi berbasis Desktop sedangkan Java ME (Mobile Edition) seperti namanya ditujukan untuk keperluan membuat aplikasi berbasis Mobile Adapun Java EE (Enterprise Edition) ditujukan khusus untuk membangun aplikasi berbasis website

Java bersifat open source sehingga kita dapat menggunakannya  dan mengembangkannya sendiri dengan bebas. Itulah salah satu alasan mengapa banyak yang meminati Java. Jika anda ingin menjadi programmer java berikut saya sharing beberapa ebook untuk belajar pemrograman java (untuk pemula). Ebooknya ada tiga buah masing-masing berisi tutorial pengenalan java, koneksi java ke database dan membuat aplikasi dengan java berbasis database. Silahkan Download disini. Selamat belajar pemrograman Java. :)

Cara Membuat File Executable JAR Melalui Console

Sedikit berbeda dengan menjalankan file Java, Jika kita ingin membuat file Executable jar melalui CMD maka terlebih dahulu kita harus menginstall JRE (Java Runtime Enviropment). Lantas Mengapa kita perlu membuat file Jar?

Sedikit gambaran untuk anda yang belum tahu bahwa file executable jar bisa kita ibaratkan sebagai file exe. Jadi, jika kita hendak menjalankan aplikasi yang kita bangun dengan java dikomputer lain maka kita perlu menjadikannya file jar terlebih dahulu dan pada komputer tersebut harus terinstall JRE jadi saya good bye untuk kata-kata Jar to Exe karena hal tersebut hanya akan merusak tujuan awal pembuatan java yaitu agar dapat berjalan disemua platform. Berikut adalah langkah membuat file executable jar melalui console windows.

1.Saya asumsikan anda sudah menginstall JDK (Java Development Kit) dan JRE (Java Runtime Enviropment)

2. Buka Command Prompt dan Masuk ke Directory File

3. Set Path File jar.exe, Ketik -> set path=%path%;"C:\Program Files\Java\jdk1.7.0_45\bin\jar.exe" -> Direktory Lokasi jar.exe, Sesuaikan dengan yang ada di Komputer anda

4. Build jadi Jar, Ketik -> jar cfe NamaJar.jar Nama_File (spasi) *.class

5. Tes Jalankan dengan Perintah -> java -jar NamaJar.jar

Cara Membuat File Executable JAR dari Console

Menjalankan Java Melalui Console Windows

Untuk menjalankan File java melalui command prompt windows sebenarnya tidaklah rumit namun demikian ada beberapa syarat yang harus terpenuhi jika ingin menjalankan Java melalui CMD di windows yaitu JDK atau yang juga dikenal dengan nama Java Development Kit. JDK inilah yang menterjemah code java agar dapat ditampilkan karena didalam JDK sudah ada JVM (java virtual machine). Berikut adalah langkah yang harus dilakukan untuk menjalankan file java melalui CMD

1. Saya asumsikan bahwa JDK sudah ada (terinstal di komputer anda).

2. Buka CMD dan Masuk ke Direktory File *.java yang telah di buat

3. Ketik -> set path=%path%;"C:\Program Files\Java\jdk1.7.0_45\bin" -> Direktory Lokasi JDK, Sesuaikan dengan yang ada di Komputer anda

4. Compile File Java *.java dengan perintah -> javac namafile.java

5. Lihat Didalam Direktory Folder anda (Step 2) akan ada File Baru dengan Ekstensi *.class

6. Jalankan Program anda dengan mengetikan -> java namafile (tanpa ekstensi)

Menjalankan Java Melalui Console Windows