Anda di halaman 1dari 8

December 15

RESUME TENTANG
JDBC

2014

PEMROGRAMAN FRAMEWORK (TUGAS 2)

Nama

: Achmad Asrori

Nim

: 2011420023

1. Apa yang dimaksud dengan JDBC?


JDBC (Java DB Connectivity)JDBC (Java database connectivity) adalah spesifikasi
standar dari JavaSoft API (Aplication ProgrammingInterface) yang memungkinkan
program Java untuk mengakses sistem database manajemen. JDBC API terdiridari satu
set interface dan kelas yang ditulis dalam bahasa pemrograman Java. JDBC API
Menggunakaninterface standar dan kelas, programmer dapat menulis aplikasi yang
terhubung ke database, mengirimkanpertanyaan ditulis SQL (Structured Query
Language), dan memproses hasilnya.

2. Penjelasan tentang Driver pada JDBC


Driver JDBC adalah adaptor (yang diinstal di komputer client) yang bertugas
mengonversi permintaan permintaan dari program java ke sebuah protokol yang
dapat diakses oleh database. Jenis driver JDBC :
a) JDBC-ODBC bridge plus driver ODBC, juga disebut Tipe 1.
Menerjemahkan JDBC API panggilan menjadi Microsoft Open Database
Connectivity (ODBC) panggilanyang kemudian diteruskan ke driver ODBC. Kode
ODBC biner harus dimuat pada setiap komputer klienyang menggunakan jenis
driver.
b) Native-API, sebagian Java driver, juga disebut Tipe 2.
Mengubah JDBC API API panggilan menjadi klien DBMS khusus panggilan.
Seperti driver jembatan, jenisdriver mensyaratkan bahwa beberapa kode biner
akan dimuat pada setiap komputer klien.
c) JDBC-Net, Java driver murni, juga disebut Tipe 3.
JDBC API Mengirim panggilan ke server tingkat menengah yang
menerjemahkan panggilan tersebutdalamprotokol jaringan DBMS spesifik.
Panggilan yang telah diterjemahkan tersebut kemudian dikirim kesebuah DBMS
tertentu.
d) Native-protokol, Java Driver murni, juga disebut Tipe 4.
Mengubah JDBC API melalui panggilan langsung ke protokol jaringan DBMSspesifik tanpa tingkattengah. Hal ini memungkinkan aplikasi client untuk
terhubung langsung ke server database.
Secara umum, perbedaan masing-masing tipe terletak pada arsitektur yang
melandasinya, misalnya apakah driver berhubungan dengan libary native ataukah
melalui protokol jaringan. Jenis-jenis driver ini sangat penting bagi pengembang
karena acuan dalam menciptakan driver JDBC untuk mendukung produk databasenya.
Bagi pemrogram, perbedaan mengenai jenis-jenis driver JDBC tidak berpengaruh
terhadap pembuatan aplikasi. Dalam implementasinya, informasi yang diperlukan

pemrogram adalah nama driver dan formt URL JDBC. Untuk lebih jelasnya, berikut
penjelasan mengenai driver JDBC dan format URL dari database-database yang sering
digunakan dalam pembuatan aplikasi.
a) MySQL
Nama driver JDBC : com.mysql.jdbc.Driver
Format URL : jdbc:mysql://nama_host/nama_db
b) Apache Derby
Nama driver JDBC : org.apache.derby.jdbc.EmbeddedDriver
Format URL : jdbc:derby:nama_db
c) PostgreSQL
Nama driver JDBC : postgresql.Driver
Format URL : jdbc:postgres://nama_host/nama_db
d) Oracle
Nama driver JDBC : oracle.jdbc.driver.OracleDriver
Format URL : jdbc:oracle:thin@nama_host:port#:nama_db
e) Microsoft Access
Nama driver JDBC : sun.jdbc.odbc.JdbcOdbcDriver
Format URL : odbc:driver_odbc
Instalasi driver-driver di atas (kecuali JDBC-ODBC) hampir sama, yakni dengan
menambahkan path ke driver di variabel CLASSPATH. Khusus untuk driver JDBCODBC, kita tidak memerlukan tambahan instalasi lagi karena driver ini sudah tersedia.
Adapun yang harus kita lakukan adalah menciptakan driver ODBC.

3. Langkah-langkah dasar penggunaan JDBC dan Contohnya


A. 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 :
a) getConnection(String url)
Pada methode kita hanya memerlukan argumen URL, sedangkan
untuk data user dan password sudah diikutkan secara langsung pada
URL sehingga tidak perlu lagi secara terpisah mendefinisikan data user
dan password.
Adapun penulisan nilai URL dari methode getConnection(String url)
adalah sebagai berikut :
jdbc:<DBServer>://[Host][:Port]/<namaDB>?<user=User>&<password=Pasword>

Misalkan kita menggunakan database server berupa MySQL dengan


spesifikasi menggunakan host adalah localhost dan port default (3306),
nama database adalah Database, nama user adalah adi, dan password
adalah purnomo. Maka penulisan URL adalah sebagai berikut :
jdbc:mysql://localhost:3306/Dbase?user=adi&password=pasw

Berikut ini contoh penggunaan methode ini didalam program :


try{
String url = jdbc:mysql://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);
}

b) 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:mysql://localhost:3306/Dbase;
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);
}

c) getConnection(String url, String user, String password)


Pada methode ini memerlukan argumen berupa URL, username, 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:mysql://localhost:3306/Dbase;
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

JDBC-ODBC

jdbc:odbc:<NamaDatabase>

jdbc:odbc:Dbase

MySQL

jdbc:mysql://<nmHost>:<port>/<nmDB>

jdbc:mysql://localhost:3306/Dbase

PostgreSQL

jdbc:postgresql://<nmHost>:<port>/<nmDB>

jdbc:postgresql://localhost:5432/Dbase

Microsoft
SQLServer

jdbc:microsoft:sqlserver://<nmHost>:<port>;
DatabaseName=<namaDatabase>

jdbc:microsoft:sqlserver://localhost:1433;
DatabaseName=Dbase

Oracle

jdbc:oracle:thin:@<nmHost>:<port>:<nmDB>

jdbc:oracle:thin:@localhost:1521:Dbase

IBM DB2

jdbc:db2:<NamaDatabase>

jdbc:db2:Dbase

B. Membuat Object Statement

Contoh penggunaan

JDBC API menyediakan interface yang berfungsi untuk melakukan proses


pengiriman statement SQL yang terdapat pada package java.sql. Di dalam JDBC
API disediakan tiga buah interface untuk fungsi tersebut yaitu :
a) Statement
Interface ini dibuat oleh methode Connection.createStatement().
Object Statement digunakan untuk pengiriman statement SQL tanpa
parameter.
Statement stat = Connection.createStatement();

b) PreparedStatement
Interface ini dibuat oleh methode Connection.prepareStatement().
Object PreparedStatement digunakan untuk pengiriman statement
SQL dengan atau tanpa parameter. Dengan object ini, kita dapat
menampung satu atau lebih parameter sebagai argumen input
(perameter IN). Interface ini memiliki performa lebih baik
dibandingkan dengan interface Statement karena dapat menjalankan
beberapa proses dalam sekali pengiriman perintah SQL.
PreparedStatement stat = Connection.prepareStatement();

c) CallableStatement
Interface ini dibuat oleh methode Connection.prepareCall(). Object
CallableStatement digunakan untuk menjalankan store procedure
SQL.
CallableStatement stat = Connection.prepareCall();

C. Melakukan Eksekusi Perintah SQL


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();

D. 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();

4. Hubungan antara JSP dengan JDBC dan SQL dengan JDBC


A. JSP dengan JDBC
JSP sebagai teknologi untuk pembuatan aplikasi web memiliki kemampuan
menangani database dengan menggunakan JDBC sebagai perantara program
JSP dengan database server.
B. SQL dengan JDBC
SQL adalah sebuah syntax untuk pembuatan akses database. Suatu fungsi
untuk sebuah bahasa yang dipergunakan untuk mengakses data dalam
menejemen basis data relasional untuk menejemen datanya sebuah akses
antara aplikasi dan database servernya.

5. Contoh bahasa SQL untuk proses pembuatan table dan


memasukkan data ke dalam table
Contoh Sintak bahasa SQL untuk membuat sebuah table:

CREATE TABLE IF NOT EXISTS `tblsuplier` (


`id` varchar(64) NOT NULL,
`name` varchar(100) NOT NULL DEFAULT '',
`rekening` int(11) NOT NULL,
`post_by` varchar(64) NOT NULL,
`post_date` datetime NOT NULL,
`modify_date` datetime NOT NULL,
PRIMARY KEY (`id`)
);

Contoh Sintak bahasa SQL untuk memasukkan data ke dalam sebuah table:
INSERT INTO `tblsuplier` (`id`, `name`, `rekening`, `post_by`, `post_date`, `modify_date`) VALUES
('4105122014054211', 'Suplier 1', 234242423, '1', '2014-12-05 11:42:11', '2014-12-11 21:40:36'),
('5505122014080022', 'Suplier 2', 2147483647, '1', '2014-12-05 14:00:22', '2014-12-11 21:40:27'),
('7012122014110849', 'Suplier 3', 234242424, '1', '2014-12-12 17:08:49', '0000-00-00 00:00:00'),
('8712122014111614', 'Suplier 4', 34534535, '1', '2014-12-12 17:16:14', '0000-00-00 00:00:00');

Anda mungkin juga menyukai