15 Haziran 2015 Pazartesi

JDBC Database Bağlantısı Nasıl Kurulur?

Uygulamanız için doğru driver' i yükledikten sonra, JDBC kullanarak database bağlantısının kurulmasına sıra geldi. Bunun için yazmanız gereken kod yapısı oldukça basittir. Yapmanız gerekenler sırasıyla,


  • JDBC paketini import etmek.
  • JDBC driver' i register etmek.
  • Database bağlantı bilgilerinin düzenlenmesi
  • Database bağlantısının kurulması için gerekli olan connection nesnesinin oluşturulması


JDBC paketini import etmek

Standart  select, insert, update, and delete işlemlerini yapabilmeniz için import edilmesi gerekenler:

import java.sql.* ;  // for standard JDBC programs
import java.math.* ; // for BigDecimal and BigInteger support

Programınız içerisinde ilk önce belirlemiş olduğunuz driver için register olmanızdır. Bunu yapmanın iki yolu bulunmaktadır.

Class.forName()

Bir driver' ı register etmek için kullanılan en genel yöntem Java' nın Class.forName method' unu kullanmaktır. 

try {
   Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundException ex) {
   System.out.println("Error: unable to load driver class!");
   System.exit(1);
}

İkinci bir diğer yöntem ise  getInstance()  methodunun kullanılmasıdır. 

getInstance methodunun kullanılması


try {
   Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
}
catch(ClassNotFoundException ex) {
   System.out.println("Error: unable to load driver class!");
   System.exit(1);
catch(IllegalAccessException ex) {
   System.out.println("Error: access problem while loading!");
   System.exit(2);
catch(InstantiationException ex) {
   System.out.println("Error: unable to instantiate driver!");
   System.exit(3);
}

Database URL Formulation

Driver register ve yüklenme işlemleri tamamlandıktan sonra sıra geldi DriverManager.getConnection() methodunu kullanarak bir database bağlantısı oluşturmaya. Bu methodun 3 farklı şekilde overload hali bulunmaktadır. 


  • getConnection(String url)
  • getConnection(String url, Properties prop)
  • getConnection(String url, String user, String password)
Yukarıda da görebileceğiniz üzere her bir yöntem bir tane database URL istemektedir. 

RDBMSJDBC driver nameURL format
MySQLcom.mysql.jdbc.Driverjdbc:mysql://hostname/ databaseName
ORACLEoracle.jdbc.driver.OracleDriverjdbc:oracle:thin:@hostname:port Number:databaseName
DB2COM.ibm.db2.jdbc.net.DB2Driverjdbc:db2:hostname:port Number/databaseName
Sybasecom.sybase.jdbc.SybDriverjdbc:sybase:Tds:hostname: port Number/databaseName

Connection nesnesinin oluşturulması

Kullanıcı adı ve şifresiyle birlikte Database URL kullanılması

getConnection methodunun en yaygın kullanımı Database URL yanında kullanıcı adı ve şifresinin de methoda parametre olarak gönderilmesidir. 

String URL = "jdbc:oracle:thin:@amrood:1521:EMP";
String USER = "username";
String PASS = "password"
Connection conn = DriverManager.getConnection(URL, USER, PASS);


JDBC bağlantısının kapatılması

İşlemlerin sonucunda, her bir database session' a ait olan bağlantıların hepsinin kapatılması gerekmektedir. Bunun için yapmanız gereken finally kod bloğu içerisinde 

conn.close();

kod satırını kullanmanız olacaktır. 

Şimdi buraya kadar anlattıklarımızı bir örnek üzerinde toparlamak gerekirse;





Hiç yorum yok:

Yorum Gönder