Sunday, June 7, 2020

Program JAVA : Membuat Tabel

Membuat tabel dan menginput value TextField  menjadi data tabel

Program java menyediakan tabel agar kita bisa mengelola data yang mungkin jumlahnya banyak agar lebih mudah. Pada tabel java juga bisa dilakukan sebuah proses input/output .
Kelas JTable adalah kelas turunan dari kelas JComponent. Kelas JTable digunakan untuk menampilkan atau merubah data yang disajikan dalam format baris dan kolom (two-dimensional grid). JTable dapat menampilkan data dalam jumlah banyak. Untuk dapat melihat seluruh data, Anda perlu membuat obyek scroll pane (kelas JScrollPane) dan menambahkan obyek kelas JTable ke obyek scroll pane. Anda dapat menggunakan bilah penggulung (scroll bar) dari scroll pane untuk melihat data yang belum ditampilkan.
JTable memiliki tiga model pendukung yaitu table model yang menangani pengelolaan data, column model untuk penanganan hal-hal yang berkaitan dengan kolom tabel dan list-selection model yang menangani model pemilihan data. List-selection model kelas JTable sama seperti yang digunakan di kelas JList. Selain model, kelas JTable juga mendukung renderer dan editor untuk sel-sel tabel).
JTable juga mempunyai renderer dan editor yang sudah terdefinisi sebelumnya (predefined renderer and editor) yaitu kelas-kelas tertentu yang digunakan sebagai renderer atau editor di sel-sel tabel yang disesuaikan dengan obyek dari kelas yang mengisi sel-sel tabel. Umumnya sel-sel di tabel akan menampilkan string yaitu obyek dari kelas String.


Berikut cara simpel membuat tabel di java.
pertama, pada jframe kalian add atau drag sebuah table pada swing control
ngodingTeros.blogspot.com















Lalu sesuaikan isi konten tabel sesuai kebutuhan kalian,
caranya klik kanan pada tabel, lalu pilih "Table Contents".













Pada tabel konten sesuaikan isi kolom sesuai kebutuhan kalian.
















pada tab row, kosongkan saja row,  nantinya semua row akan diisi data kita.















menjadi.
 
Tampilan setelah edit konten akan seperti ini
Lalu tambahkan sebuah textfield dan button untuk digunakan sebagai media input data yang akan menjadi data tabel. 
sesuaikan tatananya sesuai selera kalian.
Pada tahap tampilan sudah sudah selesai..
Selanjutnya pada sintak kalian isikan sebagai berikut:
pertama, import sebuah fungsi swing java

import.javax.swing.table.DefaultTableModel;

Selanjutnya kita buat sebuah method dimana method ini berisi program untuk mengisi data tabel. Sintaknya sebagai berikut

private void isiTabel(){
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
String id = tfid.getText();
String nama = tfnama.getText();
String [] data = {id,nama};
model.addRow(data);
}



Terus pada desain, 
Beri actionPerformed pada button simpan
Caranya double klik pada button atau klik kanan lalu pilih "Event" pilih "Action" lalu "actionPerformed"; seperti gambar dibawah ini.


Pada void button, masukan method yang kita buat tadi yaitu "isiTabel()"
pada tahap ini pembuatan tabel sudah selesai..
Tinggal di uji coba.















Demikian artikel tentang cara membuat tabel dan menginputkan data dari jTextField ke tabel.

Program JAVA : Koneksi JAVA dengan SQL

Mengkoneksikan JAVA dengan SQL 

Seperti yang kita ketahui, Database SQL menyimpan banyak data. Pada pemograman java juga disediakan sebuah fungsi untuk mengkoneksikan data dengan database SQL. Hal ini bertujuan untuk membantu kita mengelola data pada database SQL. Berikut adalah beberapa fungsi pada program java untuk mengeksekusi sql.

DriverManagerclass yang mengelola driver; 
Connectioninterface  method untuk terhubung ke database; 
Statementinteface untuk mengeksekusi query; 
ResultSetinterface untuk menampung data hasil query.

 Untuk selanjutnya adalah contoh penulisan sintak mengkoneksikan java dengan database sql.
Langkah pertama, add library baru pada program yaitu MySQL JDBC Driver
 1. Klik kanan pada Library lalu pilih Add Project.



















2. Selanjutnya akan tersedia banyak pilihan library, Pilih MySQL JDBC Driver lalu tekan add Library

























Pada langkah ini kita sudah memiliki library untuk mengelola SQL.
Selanjutnya pada sintak kalian import :
java.sql.Connection;
java.sql.DriverManager;
2 fungsi tersebut sudah cukup intuk bisa mengakses database SQL.















Selanjutnya tinggal masukan sintak pada program untuk mengkoneksikan program dengan database SQL. dalam menjalankan program koneksi sql diperlukan adanya blok eksepsi, hal ini dimaksudkan untuk menagkap error apabila terdapat adanya kesalahan/error program.
sintak sederhana untuk menginput data baru ke database sql sebagai berikut:
 try {
    Connection koneksi;      
    koneksi = DriverManager.getConnection("jdbc:mysql://localhost/Nama_database_kalian", "root", ""); //root adalah nama default untuk username
   koneksi.createStatement().executeUpdate("INSERT INTO Nama_Tabel_kalian VALUES '"+data_untuk_tabel+"',
'"+data_untuk_tabel+"'");
        } catch (SQLException ex) {            Logger.getLogger(NewJFrame10.class.getName()).log(Level.SEVERE, null, ex);
        }

 








Untuk mengimport data dari database SQL sintaknya sebagai berikut:
try {     
    Connection koneksi;
    koneksi = DriverManager.getConnection("jdbc:mysql://localhost/nama_database", "root", "");
    ResultSet rs = koneksi.createStatement().executeQuery("SELECT * FROM nama_tabel WHERE nama_kolom = '" + value + "';");
            while (rs.next()) {
                String value1 = rs.getString(1);//angka ini adalah nomor index dari tabel database
                String value2 = rs.getString(2);
                String value3 = rs.getString(3);
                String value4 = rs.getString(4);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "pesan error");
        }





















Demikian beberapa fungsi mengkoneksikan JAVA dengan database SQL..
sekian terimakasih.

Program JAVA : Input / Output dan Event pada JAVA GUI

Input / Output pada JAVA
Sebuah input atau output pada java GUI bisa berupa teks, angka maupun objek. contoh pallet yang bisa untuk proses input/output adalah textField bisa berupa text atau angka dan pada dasarnya akan diinputkan pada value berupa string, bisa di konvert kedalam integer juga.
Pada dasarnya hampir semua fungsi pada pallet java memiliki value yang bisa diinputkan, hanya berbeda perintah tiap swing kontolnya. berikut beberapa contoh sintak input dan output untuk java GUI.
I/O jTextField
jTextField.getText() = untuk mengambil value berupa string pada jTextField.
jTextField.setText() = untuk menginputkan value berupa string  ke jTextField.
I/O jTextArea
jTextArea().getText() = untuk mengambil value berupa string pada jTextArea.
jTextArea().setText() = untuk menginputkan value berupa string  ke jTextArea.
I/O jLabel
jLabel().getText() = untuk mengambil value berupa string pada jLabel.
jLabel().setText() = untuk menginputkan value berupa string  ke jLabel.
I/O jCheckBox
jCheckBox.getText() = untuk mengambil value berupa string pada jCheckBox.
jCheckBox..setText() = untuk menginputkan value berupa string  ke jCheckBox.
I/O jComboBox
jComboBox.getSelectedItem() = untuk mengambil item dari index jComboBox.
jComboBox..addItem() = untuk menambah item baru pada jComboBox.

dan masih banyak swing control pada java yang bisa dijadikan proses input/output.

Event pada JAVA
Event merupakan respon dari program ketika user melakukan tindakan terhadap GUI tertentu dalam aplikasi. Agar komponen GUI yang kita buat dapat menghasilkan event ketika ada interaksi dari user terhadap GUI, seperti menekan tombol, keyboard, menggerakan mouse, dan sebagainya, diperlukan listener untuk melakukannya. Dengan adanya listener ini, event yang dihasilkan dari GUI dapat merespon dari suatu interaksi yang ditujukan kepada suatu instruksi program.
Untuk dapat menggunakan listener, diperlukan sebuah Class yang terdapat pada java.awt.event.*;.

Berikut adalah fungsi setiap event pada java.
a.  ActionEvent 
Suatu  event  akan  terjadi  ketika  element  seperti  tombol  dikenai suatu action (mouse action atau enter keyboard)
- actionPerformed  : Method yangSuatu  fungsi event yang digunakan ketika event Action terjadi.
b.  KeyEvent
Suatu event akan terjadi ketika keyboard ditekan.
- keyPressed  :  Suatu  fungsi  event  yang  digunakan  ketika  pengguna  menekan tombol keyboard.
- KeyReleased  :  Suatu  fungsi  event  yang  digunakan  ketika  user melepas  tombol keyboard.
- keyTyped  :  Suatu  fungsi event  yang digunakan  ketika user mengetikkan  tombol keyboard.

c.  MouseEvent
Suatu event akan terjadi ketika user Mengirimkan perintah dengan mouse.
-  mouseClicked :  Suatu fungsi event yang digunakan ketika pengguna mengklik kiri mouse pada suatu element/ komponen seperti button dll.
- mouseEntered  :  Suatu  fungsi  event  yang  digunakan  ketika  mouse  digerakkan sehingga berada di  atas  komponen  pada  suatu  element/  komponen  seperti button dll.
- mousePressed : Suatu fungsi event yang digunakan ketika user menekan mouse.
- mouseRelease  :  Suatu  fungsi  event  yang  digunakan  ketika  user  melepaskan tombol mouse pada suatu element/ komponen seperti button.

d.  WindowEvent
Suatu  event  akan  terjadi  ketika  window  mengalami  perubahan keadaan.
- windowActived  :  Suatu  fungsi  event  yang  digunakan  ketika  jendela  aplikasi (window) diaktifkan.
- windowClosed  :  Suatu  fungsi  event  yang  digunakan  ketika  jendela  aplikasi ditutup.
- windowClosing : Suatu fungsi event yang digunakan ketika semua jendela aplikasi ditutup
- windowDeactivated  :  Suatu  fungsi event  yang digunakan  ketika  jendela  aplikasi tidak diaktifkan.
- windowDeiconified  :  Suatu  fungsi  event  yang  digunakan  ketika  jendela  aplikasi dikembalikan dari task bar ke ukuran normal.
- windowIconified  :  Suatu  fungsi  event  yang  digunakan  ketika  jendela  aplikasi dibuka.
- windowOpened  :  Suatu  fungsi  event  yang  digunakan  ketika  jendela  aplikasi dibuka.

e.  FocusEvent
Suatu  event  akan  terjadi  ketika  komponen  menerima  atau ditinggalkan focus.
- focusGained  :  Suatu  fungsi  event  yang  digunakan  ketika  komponen  kehilangan fokus.
- focusLost  :  Suatu  fungsi  event  yang  digunakan  ketika  komponen  kehilangan fokus.

f.  ItemEvent
Suatu  event  akan  terjadi  ketika  item  dalam  combo  box,check box,radio button,list,dipilih.
- ItemStateChanged  :  Suatu  fungsi  event  yang  digunakan  ketika  suatu  item berubah.

g.  DocumentEvent
Terjadi ketika dokumen mengalami perubahan.
- changeUpdate  :  Suatu  fungsi  event  yang  digunakan  ketika  teks  dokumen berubah.
- insertUpdate  :  Suatu  fungsi  event  yang  digunakan  ketika  teks  dimasukkan  ke dalam dokumen.
- removeUpdate : Suatu fungsi event yang digunakan ketika teks di hapus.

Demikian beberapa fungsi I/O dan event handling pada java, data di atas adalah sebagian fungsi pada java. mari cari banyak referensi untuk menambah ilmu kita, jangan bosan untuk terus belajar :-)

Program JAVA : Dasar GUI JAVA

 
 GUI JAVA
 
GUI (Graphical User Interface)  merupakan tampilan grafis yang mengandung alat-alat atau komponen-komponen yang memampukan pengguna untuk melakukan pekerjaan interaktif. GUI (Graphical User Interface) software yang dikembangkan oleh para peneliti di Xerox Palo Alto Research Center (PARC) di tahun 70-an. GUI di kembangkan dengan tujuan pengguna berinteraksi dengan perangkat keras computer serta memudahkan dalam mengoprasikan sebuah system operasi (user friendly). 
GUI (Graphical User User Interface) berkerja dengan cara setiap komponen, dan GUI tersebut, diasosiasikan dengan satu atau lebih rutin yang ditulis pengguna yang dikenal sebagai callback. Eksekusi setiap callback dipicu oleh aksi tertentu dari pengguna seperti tombol ditekan, klik-an mouse, pemilihan menu item, atau cursor melewati sebuah komponen. Kita sebagai GUI, yang menyediakan callback tersebut. Callback merupakan fungsi yang kita tulis dan asosiasikan dengan sebuah komponen tertentu pada GUI atau dengan GUI itu sendiri. Callback mengontrol sifat GUI atau komponen dengan melakukan beberapa aksi untuk merespon kejadian pada komponennya tersebut. Kejadian dapat berupa mouse diklik pada sebuah push button, pemilihan menu, keyboard ditekan, etc.
GUI atau Graphical Unit Interface, merupakan perangkat pertama untuk mengendalikan fungsi-fungsi suatu software, dan membuat pengguna mudah untuk memahami bagaimana menggunakan software tersebut. Kita dapat menyebut GUI sebagai bagian dari suatu software yang pertama kali ditangkap mata. Suatu software akan kelihatan bagus, jika GUI tersebut tampak menarik

Fungsi Java GUI (Graphical User Interface) :
-       Menciptakan Layar / Windows
-       Menciptakan Komponen grafis
-       Mengorganisasikan Komponen pada ruang kerja frame window
-       Memberikan properti, event, dan respon pada window ataupun komponen

Komponen Utama GUI java adalah JFC (Java Fundamental Class):
-       Koordinat GUI
-       AWT (Abstract Windows Toolkit) merupakan paket dasar dalam pembentukan GUI dengan menggunakan platform yang terdapat dalam masing-masing OS (native resource) Paket dasar : java.awt.component
-       Swing Product SUN dalam membangun GUI yang Independent sehingga bersifat cross platform dalam tampilan window yang dihasilkan. Paket dasar: javax.swing.Jcomponent
-       Event Handler Aksi-reaksi yang diberikan pada tiap-tiap komponen GUI

Dalam aplikasi NetBeans terdapat menu Palette yang berisi Swing dan komponen-komponen penting didalamnya untuk membangun sebuah aplikasi menggunakan NetBeans, mungkin masih ada beberapa pengguna NetBeans yang belum tau deskripsi masing-masing komponen tersebut maka postingan ini dibuat untuk menjelaskan satu persatu komponen tersebut.
Berikut ini penjelasan dari masing-masing bidang yang ada di Palette NetBeans:

A.  Swing Containers
Swing Containers ini menempatakan komponen-komponen yang berfungsi sebagai container / background.
-     Panel
Merupakan panel yang dapat digunakan sebagai papan dari suatu bidang / layar lain
-     Split Pane
Merupakan 2 tombol yang tebagi menjadi 2 sisi (kiri & kanan)
-     Toolbar
Merupakan bar yang dapat dimasukkan tool didalamnya, biasanya digunakan diatas layar
-     Internal Frame
Merupakan bingkai layar baru yang berada didalam bingkai utama
-     Tabbed Pane
Merupakan panel yang memiliki tab & bisa beralih dari tab 1 ke tab lainnya
-     Scroll Pane
Merupakan panel yang dapat di scroll baik horizontal ataupun vertikal
-     Desktop Pane
Merupakan container yang digunakan untuk membuat multi dokumen interface atau dekstop virtual
-     Layered Pane
Sebuah container yang memungkinkan setiap komponen didalamnya saling overlap jika diperlukan
  
B.  Swing Controls
Swing Controls menempatkan komponen-komponen yang fungsinya untuk pengelolaan Swing.
-     Label
Sebuah kolom/area yang digunakan untuk menampilkan tulisan atau gambar
-     Toggle Button
Tombol yang memiliki 2 keterangan seperti saklar (ON/OFF)
-     Radio Button
Tombol yang berfungsi untuk memilih dan tidak memilih pilihan lainnya, tombol ini hanya dapat memilih satu dari sekian pilihan
-     Combo Box
Komponen yang digunakan sebagai dropdown list, bisa digunakan untuk memilih multiple selection
-     Text Field
Komponen yang digunakan sebagai input / bidang yang dapat diedit (menulis didalamnya)
-     Scroll Bar
Komponen yang menyesuaikan tampilan sebuah konten yang terbatas & menampilkan scroll
-     Progress Bar
Sebuah bar yang mengindikasi sebuah pekerjaan dengan menampilkan presentasi pekerjaan tersebut
-     Password Field
Sebuah bidang yang digunakan untuk menulis katasandi, tidak akan menampilkan karakter & diganti dengan tanda titik
-     Separator
Digunakan untuk keperluan umum seperti membatasi komponen & memberikan garis pemisah
-     Editor Pane
Bidang yang sering disebut textarea, biasa digunakan untuk menulis apapun didalamnya
-     Button
Sebuah tombol sederhana
-     Check Box
Kotak centang yang dapat dicentang atau tidak
-     Button Group
Class yang digunakan untuk membuat multi lingkup eksklusi satu set tombol
-     List
Menampilkan sebuah daftar & dapat dipilih lebih dari satu
-     Text Area
Tidak berbeda jauh dengan Editor Pane, sebuah kolom besar yang dapat digunakan untuk menulis
-     Slider
Pengguna dapat menggeser sebuah nilai secara grafik seperti membesar kecilkan volume
-     Formatted Field
Komponen yang memungkinkan untuk mengedit sebuah nilai didalamnya secara partikular
-     Spinner
Sebuah bidang input angka yang memiliki tombol naik dan turun untuk mengontrol angka tersebut
-     Text Pane
Bidang text yang dapat diisi dengan ilai dan menandai isi-isi tersebut
-     Tree
Sebuah direktori folder yang tersusun seperti pohon ketika memiliki folder didalam folder

C.  Swing Menus
Swing Menus memiliki komponen-komponen yang dapat digunakan untuk keperluan menu / navigasi.
-     Menu Bar
Komponen untuk menampilkan menu dan item menu
-     Menu
Sebuah menu tunggal, bisa digunakan sebagai menu utama jika disisipkan submenu
-     Menu Item
Sebuah item menu tunggal didalam menu
-     Menu Item / CheckBox
Sebuah item menu tunggal atau kotak centang didalam menu
-     Menu Item / RadioButton
Sebuah item menu tunggal atau kotak centang didalam menu
-     Popup Menu
Layar munculan kecil yang menampilkan beberapa pilihan / menu
-     Separator
Keperluan umum untuk membatasi antara komponen dan memberikan garis pembatas

D.  SWING WINDOWS
Swing Windows menampilkan beberapa komponen yang digunakan untuk keperluan jendela (window) / layar.
-     Dialog
Sebuah jendela yang digunakan menampilkan dialog
-     Color Chooser
Jendela baru yang digunakan untuk memilih warna / memanipulasi
-     Option Pane
Jendela yang digunakan untuk menampilkan dialog dan opsi yang ditampilkan
-     Frame
Top Level Window, digunakan untuk bingkai window utama
-     File Chooser
Jendela baru untuk memilih sebuah file

E.  Swing Fillers
Swing Fillers menampilkan komponen-komponen yang bisa digunakan sebagai pengisi
-     Glue
Komponen yang tersedia untuk menggerakkan ke arah vertikal & horizontal
-     Horizontal Strut
Komponen yang memiliki lebar pasti dan dapat bergerak ke arah horizontal
-     Vertical Glue
Komponen yang memiliki lebar bebas & dapat bergerak  ke arah vertikal
-     Vertical Strut
Komponen yang memiliki lebar pasti dan dapat bergerak ke arah vertikal
-     Horizontal Glue
Komponen yang memiliki lebar bebas & dapat bergerak  ke arah horizontal
-     Rigid Area
Komponen yang memiliki ukuran pasti

F.   AWT
AWT merupakan singkatan dari Abstract Window Tookit menampilkan toolbox widget, grafis dan widget antarmuka pengguna yang sebelumnya ada di Swing.
-     Label
Bidang yang menampilkan tulisan, biasa digunakan untuk judul
-     Text Field
Bidang yang menampilkan kolom penulisan
-     -Checkbox
Kotak yang dapat dicentang atau tidak
-     List
Menampilkan daftar
-     Scroll Pane
Anak komponen yang otomatis membuat scroll horizontal / vertikal
-     Canvas
Sebuah kanvas kosong dapat dimasukkan sesuatu bahkan oleh pengguna lain
-     Popup Menu
Layar popup yang menampilkan menu atau pilihan lain
-     Button
Tombol
-     Text Area
Bidang besar untuk menulis beberapa baris kalimat
-     Choice
Kolom tarik-turun yang menampilkan beberapa pilihan untuk dipilih
-     Scrollbar
Tombol scroll yang dapat diterapkan dimana saja
-     Panel
Sebuah panel / container untuk keperluan umum
-     Menu Bar
Sebuah bar menu yang dapat dimasukkan kedalam frame

G.  Java Persistence
Menampilkan komponen lain dari Java yang disediakan di NetBeans
-     Entity Manager
Sebuah entitas yang terasosiasi dengan persistensi unit
-     Query Result
Hasil dari kueri persistensi
-     Query
Kueri persistensi