KA2173 Pemrograman Berorientasi Objek. 9 BAB IX PEMROGRAMAN GUI: SWING. H a l 56

dokumen-dokumen yang mirip
KA2173 Pemrograman Berorientasi Objek. 10 BAB X PENGAKSESAN DATABASE. H a l 64

visit :

TUTORIAL SEDERHANA, JAVA (Swing) dan MYSQL (SELECT dan INSERT)

Koneksi Java GUI-Database

Pemrograman Database Java

Pengenalan APLIKASI DATABASE

MODUL 6 JDBC (JAVA DATABASE CONNECTIVITY)

Belajar Java 2 Tambah, Simpan & Cari Data di Netbeans dengan Database MySQL

TUJUAN. Memahami Koneksi dan Pemrosesan Basis Data di Java Memahami JDBC Menggunakan MySQL pada program Java

Mengkoneksikan Java Netbeans dengan Database di MySQL via XAMPP

BAB IX KONEKSI POSTGRESQL PADA JAVA (Netbeans)

Langkah-Langkah Pemrograman JDBC MENGIMPOR PACKAGE JAVA.SQL MEMANGGIL DRIVER JDBC

Tutorial Aplikasi Database Matakuliah Berbasis Java Swing Menggunakan Java Database Connectivity (JDBC)

Tutorial Jasper Report with JDBC Prerequisites: Jasper Report, ireport installed, MySQL installed, and NetBeans IDE

Tutorial Java Desktop 3 Melakukan Pengambilan data pada JavaDB

KONEKSI KE DATABASE DENGAN JDBC

Menghubungkan Database Access Menggunakan Netbeans Oleh : Yuliana Setiowati

Firma Firmansyah Adi B. Resume Web Service

Java Database Connectivity (JDBC)

DAO design pattern diimplementasi dengan beberapa langkah, yaitu :

Arsitektur Aplikasi Perangkat Enterprise JDBC. Antonius Rachmat C, S.Kom, M.Cs

MODUL PRAKTIKUM KE 9

Akses Database Menggunakan JDBC

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

Java Database Connectivity (JDBC) (Minggu 5 Praktikum II)

JDBC. Imam Fahrur Rozi

MI2294 PEMROGRAMAN VISUAL MODUL PRAKTIKUM. Hanya dipergunakan di lingkungan Telkom Applied Science School

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

BAB IV IMPLEMENTASI DAN PEMBAHASAN SISTEM. Pada tahap ini merupakan tahapan implementasi dari

Koneksi Java ke MySQL Database. Edi Sugiarto, S.Kom, M.Kom

Lampiran Utama. a. Struktur Organisasi. Factory Manager. Vice Factory Manager. Non Produksi. Produksi. Dept. Power. Dept Greyee. Dept.

TUGAS FRAMEWORK 2 FAKULTAS TEKNIK JURUSAN TEKNIK INFORMATIKA UNIVERSITAS DR. SOETOMO SURABAYA MOCHAMMAD ANNAS FAHRUDIN

KEAHLIAN PEMROGAMAN JAVA

Praktikum 6a Melakukan koneksi dengan basis data

Masukkan connector tersebut ke dalam direktori pada tempat jdk di-instal dengan path

1. Buat tampilan menggunakan seperti ini dan simpan dalam class MainFrame.java

- Menuliskan business logic dari aplikasi untuk mengakses data source

Membuat Program Aplikasi Akademik dengan Menggunakan NetBeans 6.9

- Menuliskan business logic dari aplikasi untuk mengakses data source

Tugas IV Kelas Virtual Pemr. Visual

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

JAVA non OOP/IMW/PAGI. 1. Buat Database dengan Ms.Access dengan nama database perpustakaan.mdb 2. Buat tabel barang dengan struktur sbb:

Pembuatan Report menggunakan JasperReports dan ireport

Tutorial Java Desktop 2 Melakukan Koneksi ke Database JavaDB

Pemrograman Jaringan 8.

Mudafiq R. Pratama

KONEKSI NETBEANS DENGAN DATABASE SQLITE

AKSES DATABASE MENGGUNAKAN JDBC

1. Buka kembali project yang telah dibuat pada latihan 2 (project akademik)

PENDAHULUAN TENTANG NETBEANS

Manipulasi Database Dengan Netbeans

Membuat Menu Login Sederhana [Full Coding]

FAKULTAS TEKNOLOGI INFORMASI UNISKA. Modul NetBeans 8.1. Disusun oleh: Mirza Yogy Kurniawan. Modul Praktek NetBeans 8.1 Studi Kasus Perpustakaan

Untuk melakukan koneksi dari Java ke MySQL melalui JDBC, berikut langkahlangkah

Java Library dan Java Swing

Membuat Aplikasi Database dengan Netbeans

KONEKSI KE DATABASE DENGAN JDBC 2

JAVA SWING. Swing merupakan library pada java untuk membuat sebuah tampilan seperti

Pemrograman Berorientasi Obyek. Ramos Somya

Mudafiq R. Pratama

TUGAS AKHIR PEMOGRAMAN VISUAL APLIKASI PETERNAKAN AYAM BERBASIS JAVA DI PETERNAKAN AYAM MANDIRI

pilih New-Java Class Pada window New Class, ketik Person pada Class Name dan db.app pada Package

MEMBUAT REPORT: REPORTPEMBELI

BAB IV HASIL DAN PEMBAHASAN

Pemrograman Berbasis Java PERSEWAAN PELAMPUNG. Riska Nony Oktaviani Kelas 21 Teknik Informatika Teknologi Informasi

BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional

BAGIAN XIII GRAPHICAL USER INTERFACE DENGAN SWING. Praktikum I : Menggunakan JFrame, JTextField, JLabel dan JButton

Bab Hasil Pembuatan Aplikasi

BAB II MICROSOFT VISUAL STUDIO

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN

Tutorial Java Desktop 4 Menampilkan Data dengan Form TextField

MENGAKSES DATABASE DENGAN JDBC

TUGAS PEMROGRAMAN BERBASIS JAVA ADARA HIJAB

BAB 5 Mendapatkan Input dari Keyboard

uri=" prefix="logic"%>

Koneksi Sederhana Database dengan C# (Lihat, Tambah, dan Hapus Data)

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

INSTRUKSI PENCABANGAN

STEP BY STEP IN JAVA NETBEANS PROGRAMMING BY SUYANTO

Refreshing Praktikum: GUI (Graphical User Interface)

Fakultas Teknologi Informasi UJIAN AKHIR SEMESTER GENAP TAHUN AJARAN 2011/2013

Praktikum III : Menggunakan JRadioButton

- Setiap pola yang menggambarkan permasalahan yang terjadi secara berulang, serta

SmallSQL. (DBMS 100% Murni Java) SmallSQL. Basis Data II. Dosen Pengampu : Noor Ifada. Kelompok BD2-B5

E-trik Ajax. Database MySQL. Dedi Alnas

1. Buka Aplikasi NetBeans yang sudah terinstall. 2. Buat Project Baru.

Tugas Java. : Evannata Dwiyan. Nim : : Sistem Informasi. Kelas : 21. : Informasi Restoran

Membuat Kalkulator dengan Java

SMH2D3 Web Programming. 7 BAB V PHP SESSION & COOKIES. H a l IDENTITAS. Kajian Teknik pemrograman menggunakan PHP

1. Silahkan anda buka project dari modul 4 anda yang sudah anda selesaikan 2. Tambahkan 1 buah view dengan nama FormMain

Isi Data Source Name seperti gambar diatas: Kemudian pilih database dengan meng klik tombol select, tampil seperti gambar diatas:

PRAKTEK 1 CLASS, ATTRIBUTE, METHOD, DAN OBJEK

Materi 5 Pemrograman Visual

PEMROGRAMAN JAVA SISTEM PARKIR

Generated by Foxit PDF Creator Foxit Software For evaluation only. 17/09/ :46

MEMBUAT LAPORAN (DATA REPORT)

TUGAS UTS PEMROGRAMAN JAVA

Penggunaan Netbeans IDE, Hello World, variable dan Operator aritmetika.

Materi 1 Pemrograman Visual

Transkripsi:

9 BAB IX PEMROGRAMAN GUI: SWING 91 IDENTITAS Kajian Relasi Antar Kelas 2, Exception Handling, Akses Database Topik Pemrograman GUI (IDE tools) Kompetensi Utama 1 Menggunakan GUI pada bahasa pemrograman Java (bantuan IDE) 2 Mengetahui tentang konsep objek pada pemrograman GUI Lama Kegiatan Praktikum 1 Pertemuan Terbimbing : 1 x 30 menit 2 Kegiatan Mandiri : 1 x 90 menit Parameter Penilaian 1 Tugas Awal/Pendahuluan 2 Praktikum : Hasil Pengamatan H a l 56

92 PERTANYAAN PENDAHULUAN a Apakah yang dimaksud dengan Swing? b Bagaimana cara kerja dari komponen Swing? H a l 57

93 PRAKTIK 931 Exercise 1: Membuat GUI Pemrograman GUI-Java dibentuk berdasarkan objek-objek dari komponen Swing Latihan ini akan mengenalkan beberapa komponen Swing yang sering digunakan, membentuk GUI dengan menggunakan bantuan IDE Netbeans 9311 Soal, Langkah Penyelesaian Permasalahan/Soal Diketahui sebuah GUI sebagai berikut, buatlah GUI tersebut menggunakan bantuan IDE: H a l 58

Langkah Penyelesaian Setelah membuat 1 project java, buatlah sebuah JFrame pada package yang diinginkan dengan memilih JFrame Form Isikan nama JFrame sesuai yang diinginkan H a l 59

Pada gambar di atas, terlihat 2 bagian utama, yaitu Panel GUI dan Komponen Swing Untuk mendesain sebuah GUI, tarik (drag & drop) komponen-komponen dari Komponen Swing ke Panel GUI Properti dari komponen Swing yang digunakan dapat diubah di bagian Properties (window bawah dari Komponen Swing) Properti dapat mengubah nilai komponen Swing seperti tampilan JTextField, tipe layout JPanel dan lainnya Desain Panel GUI sebagai berikut: H a l 60

Ganti nilai JComboBox (Item1 dst) dengan nilai tahun dari 1990 hingga 2000 Pengaturan dapat dilakukan pada bagian Properties, pilihan Model Jalankan program, perhatikan bahwa radio button masih bisa dipilih keduanya Agar dapat dipilih salah satu saja, tambahkan Button Group dari Komponen Swing ke Panel GUI Secara tampilan tidak akan terdapat perubahan Setelah menambahkan komponen tersebut, pilih salah satu radio button, lihat bagian properties sesi buttongroup Pilih buttongroup1 (ini adalah nama otomatis yang dibuat IDE terhadap komponen Button Group yang telah ditambahkan sebelumnya) Lakukan hal ini pada radio button yang lain, dan jalankan kembali untuk memastikan bahwa hanya 1 radio button yang dapat dipilih Untuk menambahkan aksi saat menekan tombol, klik 2x tombol yang ada, lalu jendela akan berpindah dari mode Design ke mode Source Tambahkan aksi yang diinginkan di bagian body method yang digenerate oleh IDE H a l 61

Tambahkan kode berikut: //mengambil nilai dari JTextField String nama = jtextfield1gettext(); //mengambil nilai dari JComboBox String tahunlahir = jcombobox1getselecteditem()tostring(); //mengambil nilai dari radio button String gender; if(jradiobutton1isselected()){ gender = "Pria"; else if(jradiobutton2isselected()){ gender = "Wanita"; else{ gender = "Belum Dipilih"; //buat sebuah String untuk menampilkan String tampil = "Nama: "+nama+"\n"+ "Tahun Lahir: "+tahunlahir+"\n"+ "Gender: "+gender; //tampilkan String "tampil" ke Dialog Box JOptionPaneshowMessageDialog(this, tampil); Hasil akhir ketika menekan tombol Tampilkan yaitu: H a l 62

94 STUDI KASUS Duplikasilah GUI di atas, hingga menjalankan fungsi yang benar Bereksperimenlah dengan setiap komponen GUI tambahan seperti menu dan turunannya 95 RESUME Kerjakanlah studi kasus di atas dengan bantuan asisten/dosen di kelas H a l 63

10 BAB X PENGAKSESAN DATABASE 101 IDENTITAS Kajian Relasi Antar Kelas 2, Exception Handling, Akses Database Topik Pengaksesan Basis Data MySQL Kompetensi Utama 1 Mahasiswa memahami konsep pengaksesan basis data MySQL menggunakan bahasa java 2 Mahasiswa mampu menerapkan query SELECT menggunakan bahasa pemrograman java 3 Mahasiswa mampu menerapkan query INSERT menggunakan bahasa pemrograman java 4 Mahasiswa mampu menerapkan query DELETE menggunakan bahasa pemrograman java 5 Mahasiswa mampu menerapkan query UPDATE menggunakan bahasa pemrograman java Lama Kegiatan Praktikum 1 Pertemuan Terbimbing : 1 x 120 menit 2 Kegiatan Mandiri : 0 x 120 menit Parameter Penilaian 1 Tugas Awal/Pendahuluan 2 Jurnal Pengamatan H a l 64

102 PERTANYAAN PENDAHULUAN a Apakah yang dimaksud dengan JDBC? b Langkah apa yang harus dilakukan untuk membuka koneksi antara Java-MySQL? c Apa yang dimaksud dengan ResultSet & interface PreparedStatement? H a l 65

103 PRAKTIK 1031 Exercise : Mengakses database MySQL Latihan ini meliputi kegiatan untuk membuat class Koneksi berdasarkan tabel yang sudah ditentukan sebelumnya JDBC dibutuhkan untuk menghubungkan bahasa pemrograman java dengan database JDBC merupakan singkatan dari Java DataBase Connectivity JDBC merupakan driver untuk mengakses database Analoginya seperti driver printer untuk menggunakan sebuah printer melalui computer Driver JDBC sendiri merupakan koleksi class-class Java yang dikumpulkan dalam satu atau beberapa file jar JDBC yang digunakan berbeda-beda utuk setiap database yang digunakan Ada beberapa langkah yang harus dilakukan untuk mengakses database menggunakan bahasa java: 1 Import packages terkait Untuk menggunakan JDBC package terkait harus diimport Package yang biasanya diimport yaitu import javasql* 2 Mendaftarkan driver JDBC tersebut Biasanya merupakan 1 kelas tersendiri sebagai inisialisasi driver yang digunakan sehingga bisa membuka kanal pengaksesan database 3 Membuka koneksi Caranya dengan menggunakan method DriverManagergetConnection(), hal ini merepresentasikan koneksi fisik dengan database 4 Eksekusi query Hal ini membutuhkan sebuah objek dengan tipe Statement untuk membangun dan men-submit SQL statement ke database 5 Ekstrak data hasil eksekusi query Tipe data hasil eksekusi query biasanya adalah ResultSet yang memiliki nilai record data dari database Untuk meng-ekstrak ResultSet ke dalam bentuk Object (String dll), dibutuhkan method ResultSetgetXXX() 6 Clean up Setelah mengakses data, sebaiknya dilakukan closing database Terkait langkah ke-4 (point d), objek bertipe Statement dibentuk dari 3 interface yang mengandung method untuk mengeksekusi query yang diberikan: 1 Statement: merupakan general-purpose pengaksesan database Digunakan untuk mengeksekusi query yang static seperti select * from nama_tabel Interface ini tidak menerima parameter 2 PreparedStatement: Digunakan untuk mengeksekusi query dinamis dan memiliki input parameter Jika query static harus dieksekusi berulang kali, penggunaan preparedstatement akan lebih efektif dibandingkan Statement 3 CallableStatement: berfungsi untuk mengakses stored procedure dari database (procedure, function dll) Untuk mengeksekusi query, terdapat 3 method yang digunakan (terdapat pada objek bertipe Statement dan PreparedStatement): 1 boolean execute(string SQL) 2 int executeupdate(string SQL) 3 ResultSet executequery(string SQL) H a l 66

10311 Soal, Langkah Penyelesaian dan Solusi Lengkap Permasalahan/Soal Diketahui tabel sebagai berikut pada MySQL: Nama database: si_desa Url database: jdbc:mysql://localhost/si_desa Username: root Password: <tidak ada password> Driver JDBC: "commysqljdbcdriver" Nama Table: desa_ninja Atribut: id_desa (primary key), nama, pemimpin Buatlah pengaksesan terhadap tabel di atas Langkah Penyelesaian Untuk mengakses database, dibutuhkan 1 kelas untuk mewakilkan langkah a-c Hal ini tidak harus dilakukan, tetapi agar memudahkan maintainance data, jika terdapat perubahan database yang digunakan atau perubahan informasi lain seperti username dan password, dibuat 1 kelas untuk merepresentasikan hal ini Jadi kelas lain yang mengakses database cukup membuat objek dari kelas Pool Connection ini Informasi yang dibutuhkan untuk membuat kelas ini adalah nama database, username, password dan driver JDBC yang digunakan H a l 67

//Langkah pertama, import package terkait import javasqlconnection; import javasqldrivermanager; import javasqlsqlexception; public class KoneksiDB { // driver JDBC driver dan database URL private final String JDBC_DRIVER = "commysqljdbcdriver"; private final String DB_URL = "jdbc:mysql://localhost/si_desa"; // Database credentials private final String USER = "root"; private final String PASS = ""; private Connection conn = null; public void bukakoneksi() { boolean flag = false; try { //Langkah ke-2: Registrasi JDBC ClassforName(JDBC_DRIVER); catch (Exception e) { Systemoutprintln(egetMessage()); flag = true; if (!flag) { try { //Langkah ke-3: buka koneksi conn = DriverManagergetConnection(DB_URL, USER, PASS); catch (SQLException e) { Systemoutprintln(egetMessage()); public Connection getconn() { return conn; JDBC merupakan package class yang bukan bawaan dari bahasa Java Sehingga library tersebut harus diimport terlebih dahulu ke project yang terkait Caranya, klik kanan di bagian Libraries pada project yang mengakses database, pilih Add Library Di sini, bisa ditambahkan Library MySQL ataupun Oracle Untuk MySQL dapat ditambahkan MySQL JDBC Driver (jika menggunakan Netbeans) H a l 68

H a l 69

Cara mengakses database dengan menggunakan query DML (INSERT, UPDATE, dan DELETE) serta SELECT adalah sebagai berikut: import javasqlconnection; import javasqlpreparedstatement; import javasqlsqlexception; /** * * @author Eja */ public class Main { public static void main(string[] args) { //bentuk objek dari class KoneksiDB KoneksiDB kdb = new KoneksiDB(); kdbbukakoneksi(); //ambil atribut Connection dari KoneksiDB Connection kon = kdbgetconn(); //query INSERT String kueriinsert = "INSERT INTO desa_ninja" + "(id_desa, nama, pemimpin) VALUES" + "(?,?,?)"; int rowaffect = 0; //persiapan kueri dari interface PreparedStatement PreparedStatement ps; try { ps = konpreparestatement(kueriinsert); pssetstring(1, "KRG"); pssetstring(2, "Kirigakure"); pssetstring(3, "Mizukage"); rowaffect = psexecuteupdate(); catch (SQLException ex) { Systemoutprintln("Error: "+exgetmessage()); if(rowaffect > 0){ Systemoutprintln("Kueri Berhasil Dieksekusi"); else{ Systemoutprintln("Kueri Gagal Dieksekusi"); Perhatikan bahwa dengan menggunakan PreparedStatement, terdapat persiapan query dengan karakter tanda tanya Karakter ini akan diisi nilainya dengan setstring (bisa juga setint dan lainnya, tergantung tipe data) Setelah mengeksekusi class di atas, maka data pada database akan bertambah seperti yang ditampilkan pada gambar di bawah H a l 70

Untuk Delete, dan Update lakukan hal yang sama dengan query berbeda Untuk SELECT, ubah class di atas menjadi seperti yang ditampilkan berikut: import javasqlconnection; import javasqlpreparedstatement; import javasqlresultset; import javasqlsqlexception; public class Main{ public static void main(string[] args) { KoneksiDB kdb = new KoneksiDB(); kdbbukakoneksi(); //ambil atribut Connection dari KoneksiDB Connection kon = kdbgetconn(); //query SELECT String kueriselect = "SELECT * FROM desa_ninja"; PreparedStatement ps; ResultSet rs; try { ps = konpreparestatement(kueriselect); rs = psexecutequery(); //menampilkan nilai dari ResultSet while(rsnext()){ Systemoutprintln("Id Desa: "+rsgetstring(1)); Systemoutprintln("Nama Desa: "+rsgetstring(2)); Systemoutprintln("Pemimpin: "+rsgetstring(3)); catch (SQLException e) { Systemoutprintln("Error: "+e); Perhatikan bahwa hasil dari pemanggilan executequery adalah ResultSet, dan ResultSet harus di-extract agar dapat ditampilkan Extraksi ResultSet dapat menggunakan perulangan ataupun kondisional H a l 71