Koneksi Postgres/mysql pada Java (neatbean)
Agus Luqmanul K (13650128)
Salam
gaesss.,. uppss siapkan dulu secangkir kopi untuk hangatkan badan
Selamat
berdingin ria Gak terasa ya gaes udah masuk
musim penghujan,yang selalumenuntut kita untuk bekerja keras dalam melawan rasa
dingin terlebih lagi melawan rasa malas untuk keluar kamar, keluar rumah
apalagi kalo udah ada jam pelajaran di sekolah maupun kampus. Yuupps tapi
jangan pantang semangat karna meskipun hujan kita masih dapat belajar dari internet
yaa kann.,.
Oh ya
materi kita kali yaitu “Koneksi postgres / mysqlpada Java (Neatbean)” akan tyang sedikit
nanyak akna merepotkan kita dan menguji ketelitian dalam bahasa pemrogaman
langsng saja kita capcus…
Landasan teori
Terdapat beberapa langkah yang secara umum
harus dilakukan sehingga aplikasi yang berbasis Java dapat berinteraksi dengan
database server. Langkah-langkah tersebut sebagai berikut :
- Impor package java.
- Memanggil Driver JDBC
- Membangun Koneksi
- Membuat Statement
- Melakukan Query
- Menutup Koneksi
- Impor package java.sql
Pertama-tama yang harus dilakukan sebelum Anda
membuat program JDBC adalah mengimpor package java.sql terbih dahulu, karena di
dalam package java.sql tersebut terdapat kelas-kelas yang akan digunakan dalam
proses-proses berintekasi dengan database server misalnya kelas DriverMaganer,
Connection, dan ResultSet.
Hal ini sangat penting dilakukan karena bagi
pemula seringkali lupa untuk mengimpor package yang kelas-kelas yang akan
digunakan terdapat di dalamnya, sehingga mengakibatkan kegagalan dalam
mengkompile program Java.
Adapun listing untuk mengimpor package java.sql
adalah sebagai berikut :
Import java.sql.*;
Listing ini dituliskan sebelum Anda menulis
kelas
- Memanggil Driver JDBC
Langkah pertama untuk melakukan koneksi dengan
database server adalah dengan memanggil JDBC Driver
dari database server yang kita gunakan. Driver adalah
library yang digunakan untuk berkomunikasi dengan database server. Driver dari
setiap database server berbeda-beda, sehingga Anda harus menyesuaikan Driver
JDBC sesuai dengan database server yang Anda gunakan.
Berikut ini adalah listing program untuk
memanggil driver JDBC.
Class.forName(namaDriver); atau
Class.forName(namaDriver).newInstance();
Kedua cara di atas memiliki fungsi yang sama
yaitu melakukan registrasi class driver dan melakukan
intansiasi. Apabila driver yang
dimaksud tidak ditemukan, maka program akan menghasilkan
exception berupa ClassNotFoundException.
Untuk menghasilkan exception apabila driver tidak ditemukan, maka
diperlukan penambahan try-catch.
Adapun cara menambahkan try-catch untuk
penanganan error apabila driver tidak ditemukan, sebagai berikut :
Try { Class.forName(namaDriver);
} catch (ClassNotFoundException e) {
… Penanganan Error ClassNotFoundException
}
Contoh listing memanggil driver menggunakan
PosqgreSQL adalah :
try {
Class.forName(“org.postgresql.Driver”);
} catch (ClassNotFoundException e) {
System.out.println(“Pesan Error : “ + e)
}
Berikut ini adalah daftar nama-nama driver dari
beberapa database server yang sering digunakan.
Database Server
|
Nama Driver
|
JDBC-ODBC
|
sun.jdbc.odbc.JdbcOdbcDriver
|
MySQL
|
com.mysql.jdbc.Driver
|
PostgreSQL
|
org.postgresql.Driver
|
Microsoft
SQLServer
|
com.microsoft.jdbc.sqlserver.SQLServerDriver
|
Oracle
|
oracle.jdbc.driver.OracleDriver
|
IBM
DB2
|
COM.ibm.db2.jdbc.app.DB2Driver
|
- Membangun Koneksi
Setelah melakukan pemanggilan terhadap driver
JDBC, langkah selanjutnya adalah membangun koneksi dengan menggunakan interface
Connection. Object Connection yang dibuat
untuk membangun koneksi dengan database server tidak dengan cara membuat object
baru dari interface Connection melainkan dari class DriverManager dengan menggunakan methode getConnection().
Connection koneksi =
DriverManager.getConnection(<argumen>);
Untuk menangani error yang mungkin terjadi pada
proses melakukan koneksi dengan database maka ditambahkan try-catch. Exception
yang akan dihasilkan pada proses ini adalah berupa SQLException. Adapun cara
penulisan listingnya adalah sebagai berikut :
try {
… koneksi database
} catch (SQLException sqle){
… penanganan error koneksi
}
Ada beberapa macam argumen yang berbeda dari
methode getConnection() yang dipanggil dari DriverManager, yaitu :
getConnection(String url)
Pada methode diatas hanya memerlukan argumen
URL, sedangkan untuk data user dan password sudah diikutkan secara langsung.
Adapun penulisan nilai sebagai berikut :
jdbc:<DBServer>://[Host][:Port]/<namaDB>?<user=User>&<password=Pa
sword>
Berikut ini contoh penggunaan methode ini
didalam program :
try {
String url = “jdbc: postgresql://localhost:3306/Dbase?
User = adi & password
= pas”;
Connection koneksi =
DriverManager.getConnection(url);
System.out.prinln(“Proses apabila koneksi
sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi
gagal dilakukan”);
}
getConnection(String url,
Properties info)
Pada methode ini memerlukan URL dan sebuah object Properties. Sebelum menggunakan
methode ini, Anda harus melakukan import package berupa java.util.*, ini dikarenakan object
Properties terdapat pada package tersebut. Object Properties berisikan spesifikasi
dari setiap parameter database misalnya user name, password, autocommit, dan
sebagainya.
Berikut ini contoh penggunaan methode ini
didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/praktikumdbd”;
Properties prop = new java.util.Properties(); // tidak mengimpor kelas
prop.put(“user”,”NamaUser”); prop.put(“password”,”datapassword”);
Connection koneksi =
DriverManager.getConnection(url, prop);
System.out.prinln(“Proses apabila koneksi
sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi
gagal dilakukan”);
}
getConnection(String url,
String user, String password)
Pada methode ini memerlukan argumen berupa URL, user name,
dan password. Methode ini secara langsung
mendefinisikan nilai URL, user name dan password.
Berikut ini contoh penggunaan methode ini
didalam program :
try {
String url = “jdbc: postgresql://localhost:5432/
praktikumdbd”; String user = “adi”
String password “ternate”
Connection koneksi =
DriverManager.getConnection(url, user, password);
System.out.prinln(“Proses apabila koneksi
sukses”);
} catch (SQLException sqle) {
System.out.println(“Proses apabila koneksi
gagal dilakukan”);
}
Berikut ini adalah daftar penulisan URL
dari beberapa database server yang
sering digunakan.
Database
Server
|
Nama URL
|
Contoh
penggunaan
|
JDBC-ODBC
|
jdbc:odbc:<NamaDatabase>
|
jdbc:odbc:Dbase
|
MySQL
|
jdbc:mysql://<nmHost>:<port>/<n
mDB>
|
jdbc:mysql://localhost:3306/Dbase
|
PostgreSQL
|
jdbc:postgresql://<nmHost>:<port>
/<nmDB>
|
jdbc:postgresql://localhost:5432/Dbas
e
|
Microsoft
SQLServer
|
jdbc:microsoft:sqlserver://<nmHost
>:<port>;
DatabaseName=<namaDatabase>
|
jdbc:microsoft:sqlserver://localhost:14
33;
DatabaseName=Dbase
|
Oracle
|
jdbc:oracle:thin:@<nmHost>:<port
>:<nmDB>
|
se
|
IBM DB2
|
jdbc:db2:<NamaDatabase>
|
jdbc:db2:Dba
|
- Membuat Statement
JDBC
API menyediakan interface yang berfungsi untuk melakukan proses pengiriman
statement SQL yang terdapat pada package java.sql. Statement yang ada secara
umum digunakan terdiri dari berikut :
Statement
Interface
ini dibuat oleh methode Connection.createStatement(). Object
Statement
digunakan untuk pengiriman statement SQL tanpa parameter serta
Setiap
SQL statement yang dieksekusi dikirim secara utuh ke database.
Statement
stat = Connection.createStatement();
PreparedStatement
Interface
ini dibuat oleh methode Connection.prepareStatement(). Object PreparedStatement
digunakan untuk pengiriman statement SQL dengan atau tanpa parameter. Interface
ini memiliki performa lebih baik dibandingkan dengan interface Statement karena
dapat menjalankan beberapa proses dalam sekali pengiriman perintah SQL,
pengiriman selanjutnya hanya parametered querynta saja.
PreparedStatement
stat = Connection.prepareStatement();
- Melakukan Query
Setelah
kita memiliki object statement, kita dapat
menggunakannya untuk melakukan pengiriman perintah SQL dan
mengeksekusinya. Methode eksekusi yang digunakan untuk
perintah SQL terbagi menjadi dua bagian
yaitu untuk perintah SELECT methode eksekusi yang digunakan
adalah executeQery() dengan nilai kembaliannya adalah ResultSet, dan untuk
perintah INSERT, UPDATE, DELETE methode eksekusi yang digunakan adalah executeUpdate().
Berikut
ini adalah contoh melakukan eksekusi perintah SQL dan mengambil hasilnya
(ResultSet) dengan menggunakan perintah SELECT :
String
sql = “SELECT kode, nama, alamat, kelas FROM dataSiswa”;
ResultSet
set = stat.executeQuery(sql);
while
(set.next()) {
String
kode = set.getString(“kode”); String nama = set.getString(“nama”); String
alamat = set.getString(“alamat”); String kelas = set.getString(“kelas”);
}
Berikut
ini adalah contoh melakukan
eksekusi perintah SQL dengan
menggunakan
perintah DELETE.
String
sql = “DELETE FROM data_siswa WHERE kode = “1234”; PreparedStatement stat =
konek.prepareStatement(sql); stat.executeUpdate();
- Menutup Koneksi
Penutupan
terhadap koneksi database perlu dilakukan agar sumber daya yang digunakan oleh
object Connection dapat digunakan lagi oleh proses atau program yang lain.
Sebelum kita menutup koneksi database, kita
perlu melepas object Statement dengan kode sebagai berikut :
statement.close();
Untuk
menutup koneksi dengan database server dapat kita lakukan dengan kode sebagai
berikut :
connection.close()
1. Membuat class koneksi
2. Membuat form tampilan
Setelah
kita melalui praktik-praktik sebelumya pada praktikan kali ini kita dapat
merasakan implementasi dari bab-bab sebelumnya.
Perbedaan
Perbedaannya
dalam praktikum kali ini yaitu ketika memasukan drivernya postgredan mysql
Kritik
dan Saran
Sebaiknya
kita lebih giat lagi dalam belajar karna tidak cukup mempelajari databasenya
kita juga harus mempelajari juga pemrogaman java atau aplikasi yang lain untuk
penggunaan databsenya
Manfaat
Semoga dengan membaca coratan ini kita dapat
menmambha wawasan kita dalam pelajaran database dan sedikit mengingatkan kita dengan
pelajaran bahasa pemrogmaan java dan mengambil ilmu dari ini semua
Semoga
bermanfaat :)
Daftar Pustaka
http://blog.uin-malang.ac.id/matkulku/2012/01/05/laporan-praktikum-8-dbd-koneksi-postgresql-pada-java-netbeans/
http://darkzone7.blogspot.com/2013/10/package-pada-java-pengertian-joptionpane.html
modul praktikum Desain Basis Data UIN MALIKI MALANG 2014
http://blog.uin-malang.ac.id/matkulku/2012/01/05/laporan-praktikum-8-dbd-koneksi-postgresql-pada-java-netbeans/
http://darkzone7.blogspot.com/2013/10/package-pada-java-pengertian-joptionpane.html
modul praktikum Desain Basis Data UIN MALIKI MALANG 2014








Tidak ada komentar:
Posting Komentar