DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JAVA & DATABASE
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Introduction JDBC is basically used because it can access any database. JDBC uses drivers to connect to the database, which are categorized into four types. Jdbc has a set of exclusive interfaces and classes. Few steps to perform JDBC application.
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Driver 1.Jdbc-Odbc bridge driver : This bridge driver can be used to connect to any existing database, I.e, ODBC compliant. 2.Native-API/partly Java driver : Converts JDBC calls into database specific calls for database such as SQl, Oracle etc. Driver is partly written in “Java” and partly in “C”. 3.Net-protocol/all-Java driver : This driver is used in Internet to connect to the database at different locations. This is supposed to be the most flexible driver. 4.Native-protocol/all-Java driver : Converts the JDBC calls into the network protocol used by DBMS’s directly. This is very much used in intranet access.
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Architecture
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC API for Database Interfaces : –Connection –Statement –Result set –Prepared statement –Result set Meta data –Callable statement –D/B Meta data Classes : –Driver manager –Date Time –Types –Date –Driver property –information –Time stamp
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Ada 7 langkah untuk mengakses database: 1.Load Driver JDBC 2.Mendefinisikan Koneksi URL yang dipakai 3.Menghubungkan Koneksi tsb. 4.Menciptakan statement object 5.Mengeksekusi query atau update 6.Memproses Hasil 7.Memutuskan Koneksi
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC try { // Class.forName("org.gjt.mm.mysql.Driver"); // Step 1 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // step1 } catch (Exception E) { E.printStackTrace(); } // end catch
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC try { con = DriverManager.getConnection("jdbc:odbc:Datab ase1");//,"root",""); // step 2 and 3
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC stmt = con.createStatement(); // step 4 rs = stmt.executeQuery("SQL Query'"); // step 5 while (rs.next()) { // step 6 : : } // while
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC stmt.close(); // step7 con.close();
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Access Database Microsoft Acess Database : db1
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Setting Access Database Menset Database yang dipakai sebagai acuan dalam Program Start -> Control Panel -> ODBC Data Source
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Setting Access Database Tampil jendela ODBC Data Source Administrator Click System DSN-> Add-> pilih Driver (Microsoft Access Driver) -> Finish. Dalam hal ini kita memakai Access Database. Tentukan Letak File Database yang digunakan
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Setting Access Database Click OK Data base db1 siap diakses oleh Program
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Program package jdbc; import java.sql.*; public class JDBCApp { public static void main(String[] args) { Connection conn = null; Statement stmt = null; ResultSet rs = null; try { Class.forName("sun.jdbc.odbc.Jd bcOdbcDriver"); // step1 } catch (ClassNotFoundException cnfe) { System.err.println(cnfe); } catch (Exception E) { E.printStackTrace(); } // end catch try { conn = DriverManager.getConnection("jdbc:odbc:bukuJDB C"); // step 2 and 3 stmt = conn.createStatement(); // step 4 rs = stmt.executeQuery("SELECT * FROM buku"); while (rs.next()) { // step 6 System.out.print(rs.getString("No") + " "); System.out.print(rs.getString("Judul") + " "); System.out.print(rs.getString("Pengarang") + " "); System.out.print(rs.getString("Penerbit") + " "); System.out.print(rs.getString("harga") + " "); System.out.println(""); } // while stmt.close(); conn.close(); } catch(SQLException sqle) { System.err.println("SQLException : " + sqle.getMessage()); } // end cacth } }}
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Program Hasil Program 1 Java 2 Complete Reference Patrick Naughton McGraw Hill Distributed Systems Tanenbaum Prentice Hall Home Networking Bible Plumley IDG Books Bandingkan
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Program dengan Access Setting perlu dilakukan pada Control Panel, untuk menset Database yang dipakai Pada Java Program tidak diperlukan setting apapun Sun telah menyediakan driver secara otomatis untuk Access Hal ini tidak berlaku untuk Sistem Database yang lain, misal: mysql, oracle, dll.
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Mysql Database Mysql dapat didownload di : wnloads Extract dan lakukan instalasi dengan memilih: Setup.exe Mysql terletak di C:\mysql Aktifkan mysql admin dengan double click di : C:\mysql\bin\winmysql admin
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Mysql Database Inilah tampilannya Atau tampak di pojok kanan bawah
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Mysql Database Mysql database : test002 Tabel : tabel02
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql JDBC Driver for MySQL dapat di-download di : dengan nama : MySQL Connector/J Extract ke C:\ JDBC Driver akan terletak di subdirectory C:\mysql-connector-java
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql Dengan JBUILDER, buat program (class) Java misalnya : JDBCTest01.java Project -> Project Properties -> Path -> Required Libraries - > Add... -> New, tuliskan nama library-nya, misal mysql- connector-java, click Add...
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql Pilih subdirectory C:\mysql-connector-java-..., di mana JDBC driver untuk mysql diletakkan, click OK
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql Library yang baru akan tampak seperti pada gambar, click OK
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Program package jdbc01; import java.sql.*; public class JDBCTest01 { public static void main(String[] args) { Connection conn = null; Statement stmt = null; ResultSet rs = null; try { Class.forName("org.gjt.mm.mysql.Drive r"); // Step 1 } catch (ClassNotFoundException cnfe) { System.err.println(cnfe); } catch (Exception E) { E.printStackTrace(); } // end catch try { conn = DriverManager.getConnection("jdbc:mysql://localhost: 3306/test002","rsn","risanuri"); stmt = conn.createStatement(); // step 4 rs = stmt.executeQuery("SELECT * FROM tabel02"); while (rs.next()) { // step 6 System.out.print(rs.getString("Nomer") + " "); System.out.print(rs.getString("Judul") + " "); System.out.print(rs.getString("Pengarang") + " "); System.out.print(rs.getString("Penerbit") + " "); System.out.print(rs.getString("harga") + " "); System.out.println("Oke"); } // while stmt.close(); conn.close(); } catch(SQLException sqle) { System.err.println("SQLException : " + sqle.getMessage()); } // end cacth }
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Hasil JDBC mysql 1 Core Servlets and JSP Marty Hall Prentice Hall Oke 2 Java 2 Complete Reference Patrick Naughton McGraw Hill Oke 3J2EE Unleashed Bambara Allen Sams Oke Bandingkan
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY JDBC Program dengan mysql Setting tidak perlu dilakukan pada Control Panel Perlu dilakukan setting pada Java Program Driver JDBC disediakan oleh mysql dan harus di-download secara terpisah Mysql memungkinkan memanggil Database lewat jaringan
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Tambahan con = DriverManager.getConnection("jdbc:mysql://localhost:3306/pasiendrerit ta","root",""); stmt = con.createStatement(); stmt.executeUpdate("INSERT INTO catatanpasien VALUES('"+ navn[0] +"','"+ navn[1] +"','"+ navn[2] +"','"+ navn[3] +"','"+ navn[4] +"','"+ navn[5] +"');");
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Mysql tools Dbtools Mysql-front
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql Setting Classpath, prosesnya sama dengan setting classpath yang lain –Pada Win98, Start ->Run (sysedit), kemudian pada autoexec.bat tambahkan C:\mysql-connector-java , yang merupakan letak subdir JDBC Driver
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql
DEPARTMENT OF ELECTRICAL ENGINEERINGGADJAHMADA UNIVERSITY Java to mysql Compile –myjava>javac JDBCTest01.java Buat subdir jdbc01 di dalam :\myjava Letakkan JDBCTest01.class pada subdir :\myjava\jdbc01 Eksekusi –\myjava>java jdbc01.JDBCTest01 1 Routing TCP/IP Jeff Doyle null Oke 2 Top Down Network Design Oppenheimer Oke 3 Java Security Jess Gams Oke