Database Java

6
I. Pengertian JDBC JDBC merupakan teknologi standar Java yang menjadi bagian dari JDK (J2SDK) untuk akses dan pengolahan database. Database yang didukung oleh Java cukup banyak, seperti : MySQL, Postgres, Oracle, B2, Access dan lain-lain. JDBC berisi kumpulan kelas-kelas dan interface yang ditulis dengan bahasa Java. JDBC dapat digunakan untuk membangun koneksi ke data source, mengirim statement ke data source, memproses hasil statement tersebut. II. Koneksi MySql ke Java Langkah-langkah untuk melakukan koneksi Java dan MySQL: 1. Mengimpor package java.sql Program Java yang menggunakan JDBC harus mengimpor package java.sql, sehingga program dapat mengenali DriverManager, Connection dan ResultSet. Contoh mengimpor package java.sql sebagai berikut: import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; Atau cukup dengan : import java.sql.*; Penjelasan: DriverManager : memanggil driver JDBC ke memori, dan dapat juga digunakan untuk membuka koneksi ke sumber data. Connection : mempresentasikan suatu koneksi dengan suatu data source, juga digunakan untuk membuat objek Statement, PreparedStatement dan CallableStatement.

description

java

Transcript of Database Java

I.Pengertian JDBCJDBC merupakanteknologi standar Java yang menjadi bagian dari JDK (J2SDK) untuk akses dan pengolahan database.Database yang didukung oleh Java cukup banyak, seperti : MySQL, Postgres, Oracle, B2, Access dan lain-lain.JDBC berisi kumpulan kelas-kelas dan interface yang ditulis dengan bahasa Java.JDBC dapat digunakan untuk membangun koneksi ke data source, mengirim statement ke data source, memproses hasil statement tersebut.

II.Koneksi MySql ke JavaLangkah-langkah untuk melakukan koneksi Java dan MySQL:1.Mengimpor package java.sqlProgram Java yang menggunakan JDBC harus mengimpor package java.sql, sehingga program dapat mengenali DriverManager, Connection dan ResultSet.Contoh mengimpor package java.sql sebagai berikut:import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;Atau cukup dengan :import java.sql.*;Penjelasan: DriverManager : memanggil driver JDBC ke memori, dan dapat juga digunakan untuk membuka koneksi ke sumber data. Connection : mempresentasikan suatu koneksi dengan suatu data source, juga digunakan untuk membuat objek Statement, PreparedStatement dan CallableStatement. Statement : mempresentasikan suatu perintah SQL, dan dapat digunakan untuk menerima objek ResultSet. PreparedStatement : merupakan alternatif untuk objek Statement SQL yang telah terkompilasi awal. CallableStatement : mempresentasikan suatu stored procedure, dan dapat digunakan untuk menjalankan stored procedures yang terkompilasi dalam suatu RDBMS yang mendukung fasilitas tersebut. ResultSet : mempresentasikan sebuah hasil dari database yang dihasilkan dari statemen SQL SELECT. SQLException : suatu class exception yang membungkus kesalahan (error) pengaksesan database.2.Memanggil driver JDBCUntuk koneksi dengan database yang digunakan pada program java dengan JDBC, harus menggunakan driver. Driver merupakan library atau API (Application Programming Interface). Masing-masing database menggunakan driver yang berbeda.Berikut ini tabel daftar nama driver dari beberapa database server:Database DriverNama Driver

JDBC-ODBCsun.jdbc.odbc.JdbcOdbcDriver

MySQLcom.mysql.jdbc.Driver

PostgreSQLorg.postgresql.Driver

Microsoft SQL Servercom.microsoft.jdbc.sqlserver.SQLServerDriver

Oracleoracle.jdbc.driver.OracleDriver

IM DB2COM.ibm.db2.jdbc.app.DB2Driver

Contoh untuk koneksi ke MySql:String url = "jdbc:mysql://localhost:3306/db_mahasiswa"; try{ Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(url,"root",""); } catch(ClassNotFoundException ex) { System.err.println("Driver Error"); System.exit(); } catch(SQLException e){ System.out.println("Tidak berhasil koneksi"); } }

3.Mendefinisikan URL untuk Koneksi DatabaseSetelah load driver sukses, Anda perlu mendefinisikan URL lokasi dari database. Bentuk umum JDBC URL sebagai berikut:jdbc:databaseserver://[hostname][,failoverhost][:post]/[dbname][?param1=value1][&param2=value2]Contoh:String url = "jdbc:mysql://localhost:3306//dbmahasiswa;user=root&password=";String url = "jdbc:odbc:dbmahasiswa";

4.Melakukan Koneksi Ke DatabaseUntuk melakukan koneksi ke database, Anda dapat menggunakan metode getConnection dari kelas DriverManager. Ada beberapa argument yang berbeda dari method getConnection() yang dipanggil dari DriverManager, yaitu:getConnection(String url, String User, String password)Pada method ini hanya memerlukan argument url, username dan password.Method ini secara langsung mendefinikan nilai URL, username dan password.Contoh:try{String url = "jdbc:mysql://localhost:3306/db_mahasiswa";String user = "root";String password = "";Connection conn =DriverManager.getConnection(url,user,password);System.out.println("Proses koneksi berhasil");} catch(SQLException sqle){System.out.println("Proses koneksi gagal");}

5.Membuat Objek StatementProses query memerlukan objek Statement. Objek Statement dapat dibuat dari objek Connection. Objek Statement diperlukan untuk menjalankan perintah SQL dari program java ke database server dan mendapatkan ResultSet.Statement stmt = Connection.createStatement;atauStatement stmt;...stmt = Con.createStatement;

6.Melakukan Query atau UpdateUntuk mengirim query dan mengeksekusi, mengunakan metode executeQuery yang mengembalikan objek bertipe ResultSet. Method executeQuery digunakan untuk Statement Select. Sedangkan method executeUpdate untuk Statement Insert, Update dan Delete.String qry = "select * from mahasiswa";ResultSet rslt = Statement.executeQuery($qry);atauString insert="insert into mahasiswa values ('"+nim+"','"+nama+"','"+alamat+"')";Statement stmt;..stmt = con.createStatement;stmt.executeUpdate(insert);

7.Memproses HasilMemproses hasil adalah memproses ResultSet, tipe objek yang dikembalikan oleh metode executeQuery dari objek Statement. Dalam memproses hasil, akan menggunakan objek ResultSet.while(rslt.next()){Out.println(rslt.getString(1)+ +rslt.getString(2);}method rslt.next() pada penggalan program di atas digunakan untuk menuju ke data berikutnya hingga akhir data. Method getString diikuti nomor kolom (fields) digunakan untuk memproses data sebagai string yang kemudian ditampilkan dengan metode out.println.

8.Menutup KoneksiSebelum menutup koneksi database, harus melepaskan objek Statement terlebih dahulu.Contoh:Statement.close();Connection.close();

9.Menambah penanganan error (error handling)Penggunaan penanganan kesalahan dalam program sangat penting, karena jika proses salah ada instruksi yang dikerjakan atau kita isi dengan pesan kesalahan. Misalnya saja penanganan kesalahan jika driver jdbc tidak ditemukan.Contoh:try { Class.forName("com.mysql.jdbc.Driver"); } catch(java.lang.ClassNotFoundException e) { System.err.print("ClassNotFoundException: "); System.err.println(e.getMessage()); }