Modul IV Aplikasi Basis Data

A. Tujuan 1. Mahasiswa mampu membuat aplikasi basis data sederhana menggunakan JSP. B. Ringkasan Teori JDBC Java menyediakan standard API untuk mengakses database yang disebut Java Database Connectivity (JDBC) API. Dengan menggunakan ini, para pengembang memungkinkan dapat mengakses database tanpa memperdulikan vendornya; para vendor menyediakan implementasi untuk abstract interfaces yang dijelaskan didalam API, penyediaan tersebut sama dengan set dari kemampuan koneksi untuk para pengembang. Berikut ini merupakan class kunci dari JDBC API, semuanya akan dijelaskan secara detail kemudian : 1• java.sql.Connection – membuat sebuah koneksi dengan database. Secara abstrak memberikan detail dari bagaimana cara untuk berkomunikasi dengan database server. 2• java.sql.DriverManager – mengatur JDBC driver yang digunakan oleh aplikasi. Pada hubungannya dengan proper driver URL dan proper authentication, dapat menyediakan aplikasi dengan valid instances dari object koneksi. 3• javax.sql.DataSource – memisahakan detail (URL, authentication details) dari bagaimana untuk memperoleh sebuah koneksi ke database. Merupakan method terbaru dan yang lebih disukai dari obtaining Connection objects. 4• java.sql.Statement – menyediakan method untuk para pengembang dalam mengeksekusi pernyataan SQL. 5• java.sql.ResultSet – menyediakan hasil dari sebuah pernyataan SQL. Objects ini sering dikembalikan dari method yang terletak pada Statement object. java.sql.DriverManager Dengan menggunakan class ini, pengembang dapat meretrieve sebuah Connection object yang kemudian dapat dia gunakan untuk melakukan aktifitas database. Berikut ini dua langkah yang dianjurkan: 1• Pertama, JDBC driver harus diregistrasi dengan DriverManager. Hal ini dapat dikerjakan dengan menggunakan method Class.forName untuk menge-load driver's class definition kedalam memori. 2• Kedua, menggunakan method getConnection pada DriverManagerm untuk menyediakan JDBC URL, sebaik username dan password supplying untuk akses database. URL harus mengikuti syntax yang dianjurkan oleh implementasi database tertentu.

Praktikum Pemrograman Web - JSP

javax.Driver").Statement java.sql.getConnection(url.sql. Hal tersebut memperoleh sebuah kejadian dari DataSource yang sekarang dapat menyelesaikan sebuah masalah untuk beberapa pengembang(developer). String user = "jeni". mengatur URL dan driver name pada kode membuatnya lebih sulit untuk aplikasi dalam menukar implementasi database. user.. String jdbcURL = "jdbc:postgresql://localhost:5432/jeni-db". jika hal itu diperlukan. kita dapat membuat sebuah instance Statement object. dimana kemudian kita dapat menggunakan query SQL. method ini menganjurkan para pengembang untuk tetap mengikuti method tersebut dari seperti detail sebagai driver class name.menggunakan pernyataan SELECT dan mengembalikan Praktikum Pemrograman Web . . Dan juga.forName("org. periksalah dokumen yang disediakan. sebuah instance tidak dapat dibuat oleh pengembang dengan menggunakan operator yang baru secara sederhana. Retrieval dari Connection object terjadi secara langsung : cara sederhana memanggil method getConnection() dalam kejadian yang valid dari DataSource. conn = DriverManager.Dibawah ini adalah contoh dari bagaimana mendapatkan koneksi dari database PostgreSQL. Dua method yang sering digunakan adalah: • executeQuery . Connection conn = null.DataSource DataSource merupakan interface yang digambarkan pada JDBC API sejak versi 2 dari spesifikasinya.Connection / java. URL dianjurkan untuk akses ke database. java. Sekali kita mempunyai sebuah instance dari object ini.JSP . Hal tersebut direkomendasikan jika kita memilih aplikasi server dengan menggunakan aturan pembuatan dari DataSource objects untuk kita. Sejak DataSource merupakan sebuah interface. URL dan driver tepat untuk implementasi database yang digunakan.Connection objects menghadirkan connections yang nyata ke database. sedangkan username dan password tepat untuk penggunaan database..sql. } catch (SQLException e) { // perform error handling here } Saat ini merupakan cara yang valid dari meretrieve sebuah Connection object. Untuk database yang lain. Sekali lagi. try { Class.postgresql. Detail-detail ini paling banyak dipakai pada berbagai aplikasi. Statement object menyediakan beberapa method untuk mengekskusi query SQL. password). String password = "j3n1master". Sekarang saatnya direkomendasikan untuk para pengembang dalam mendapatkan Connection object.sql.

next()) { //membaca data dari baris sebelum disini } 1 Ringkasan operasi pada basis data: • Memperoleh sebuah Connection baik menggunakan DrierManager atau dari DataSource. Context ctxt = null. } catch (SQLException e){ System. gunakan method next() untuk mengambil/meretrieve data. Dibawah ini adalah bagian dari contoh kode outlining prosedur. • executeUpdate – menggunakan pernyataan INSERT. try { ctxt = new InitialContext().println(e. Praktikum Pemrograman Web .JSP . Connection conn = null.executeQuery(“Select * from users”). DataSource ds = null.getConnection(). bersama dengan beberapa error yang sangat dasar – mengani prosedur. • Jika hasil dari query adalah resultset. stmt = conn. Method ini mengembalikan nilai true jika ditemukan baris berikutnya. Pemanggilan method next() akan memindahkan internal pointer menjaga ResultSet Objek ke point baris berikutnya. while (rs.sql. } } java. • Melakukan query SQL menggunakan Statement object dan retrieve results.out.createStatement(). dan nilai false jika tidak ada baris berikutnya. rs = stmt. conn = ds.lookup("jdbc/PostgreSQLDS"). ds = (DataSource)ctxt.ResultSet Sebuah objek ResultSet merupakan hasil sebuah query pada suatu basis data. telah disediakan method next(). UPDATE atau DELETE dan mengembalikan jumlah dari baris yang diperngaruhi sebagai integer primitive. • Menutup semua databaseyang berhubungan dengan object. Untuk iterasi diatas baris yang diarahkan pada ResultSet. ResultSet rs = null.hasil dari operasi sebagai ResultSet object.getMessage()). • Membuat sebuah Statement object menggunakan method createStatement() yang tersedia pada Connection object. Statement stmt = null.

Arahkan kursor pada Source Packages. Definisikan koneksi ke basis data dengan URL atau nomor IP. Buatlah sebuah tabel: User dengan field:  userName : varchar(20)  emailAddress : varchar(50)  birthDate : date 3. /** * * @author Puspaningtyas */ public class DataBaseConnection { // Sesuaikan properti jdbcURL dengan basis data anda private String jdbcURL = "jdbc:mysql://localhost:3306/aplikasijsp".JSP .com 1989-1-1 INA ina@yahoo. Buat project baru. private String user = "root". Buat folder baru dengan nama bean. Tidak usah gunakan frameworks. Gunakan SQLYog. /** Creates a new instance of UserConnection */ public DataBaseConnection() { Praktikum Pemrograman Web . private Connection connection = null. Beri nama project: aplikasi_JSP_JavaBean. 9. Ketikkan listing program seperti di bawah ini. 7. 2. 7.*. 6.com 1990-1-1 4. 5. Panggil program netbeans. Langkah Percobaan 1. 2. pilih kategori: web.Prosedur Dasar Koneksi ke Basis Data 1. Koneksikan komputer anda ke server Basis Data yang biasa anda gunakan untuk praktikum basis data. package bean. 8. jenis project: web application. import java.sql. C. Buat kelas java dengan nama kelas DataBaseConnection. 3. private String password = "". Buat objek statemen. Eksekusi query. Proses hasil eksekusi. 5. Isi tabel Pegawai dengan data sbb: userName emailAddress birthDate ANI ani@yahoo. Buat koneksi. 6. Arahkan kursor pada folder bean. 4. Tutup koneksi. Tambahkan driver JDBC ke aplikasi.

else return false. } public String getPassword() { return password. } public boolean isConnected(){ if (connection!=null) return true.getMessage()).user = user. } catch (SQLException ex) { ex. } public Connection getConnection() { return connection. } public String getJdbcURL() { return jdbcURL. } public void setConn(Connection connection) { Praktikum Pemrograman Web .printStackTrace().Driver"). connection = DriverManager.println("message: " + ex.mysql.jdbcURL = jdbcURL. user. } public void setJdbcURL(String jdbcURL) { this. } public void setPassword(String password) { this. password). System. } public boolean getClosed(){ if(isConnected()){ try { connection. } catch (Exception ex) { System.close().JSP . } public String getUser() { return user.mm. } return true.getConnection(jdbcURL.gjt.out.password = password.} try { Class.println("koneksi berhasil").forName("org.out. } else return false. } public void setUser(String user) { this. connection=null.

close(). ResultSet result = statement. beri nama userReport.DataBaseConnection conn = new bean.connection = connection. } statement. System.println("userName : "+result.sql.out. Isi file-nya seperti di bawah ini.Statement statement = conn.01 Transitional//EN" "http://www.jsp.println("userName : "+result. Eksekusi file-nya.next()){ System.getConnection().getString("emailAddress")). while (result.createStatement().createStatement().println("emailAddress : "+result. 10. out. <% bean.out. while (result.println("message: "+ex.sql.executeQuery(query).JSP .getConnection(). } catch(Exception ex){ System.w3. } } …………… 11.executeQuery(query).getMessage()).} } this. charset=UTF-8"> <title>Report Page</title> </head> <body> <h1>Report Page</h1> <% try{ String query="select * from user".DataBaseConnection().ResultSet result = statement. …………………………………… public static void main(String args[]){ DataBaseConnection conn = new DataBaseConnection(). Buat file baru dengan tipe JSP.getString("userName") +"<br>"). %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4. java.out.next()){ out.org/TR/html4/loose. try{ String query="select * from user".println("emailAddress : Praktikum Pemrograman Web . java. Statement statement = conn.getString("userName")). Ujilah bean yang anda buat dengan menambah dan mengeksekusi fungsi main().dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html.

.JSP .. Praktikum Pemrograman Web .close(). Sebagai catatan.println("message: "+ex. E Tambahan 1. Buat perintah untuk menghapus data ANI tersebut.com 2... } statement.. Buat suatu page JSP untuk menerima masukan nama.. Cari email INA. } catch(Exception ex){ out. Buat perintah untuk mencari suatu nama yang ada dalam database tersebut (misalnya ANI ) 3.. } %> </body> </html> D.. gunakan perintah executeUpdate() untuk mengeksekusi perintah insert baris baru pada tabel basis data."+result..getString("emailAddress")+"<br>").. Buat keluaran hasil query dalam percobaan ” dalam sebuah tabel” . tanggal lahir dan alamat email.... 2.getMessage()).. update imail tersebut dengan INA_cute@yahoo... Tugas 1..

Sign up to vote on this title
UsefulNot useful