13 Mart 2018 Salı

Java ile MySQL bağlantısı

Java ile MySql bağlantısı yapmadan önce temel veritabanı bilgilerine hakim olmanız ve MySql kurulumunu yapmış olmanız gerekmektedir. Bu konuda deneyiminiz yoksa youtube üzerindeki MySql Eğitim Setini izlemenizi öneririm.

MySql bağlantısını yapabilmek için bir Jar dosyasına ihtiyacımız var. Bu dosya MySql geliştiricileri tarafından sunuluyor ve bağlantı ve diğer işlemleri yapmamızı sağlayan bir kütüphane paketi olarak geliyor. MySql resmi sitesi (mysql.com) üzerinde downloads bölümünde, connectors bölümünden Java ile ilgili olan dosyanın güncel sürümünü bulabilirsiniz. Şu an ki mevcut adresi: https://dev.mysql.com/downloads/connector/j/

Connector J son sürümü MySql resmi sitesinden indirilebilir

 Şimdi projemizde bir klasör oluşturalım, proje simgesine sağ tıklayıp new/folder seçeneğini seçelim, klasör ismini "libra" olarak belirledim, ve jar dosyasını bu klasöre kopyalayalım.

Projeye yeni klasör ekleme
libra klasörünün içine connector dosyasını kopyalayın
Şimdi sıra dosyanın projeye dahil edilmesinde. Bunun için proje klasörüne sağ tıklayınız ardından properties seçeneğini seçiniz.

Projeye sağ tıklayarak properties seçeneğini seçiniz
Ardından açılan pencerede Java build path seçeneğini seçelim, buradan Libraries sekmesini ardından Add jars seçeneğini seçelim. Projenin bulunduğu klasörde, bin dizininden oluşturduğumuz libra klasörüne geçelim Jar dosyasını seçim onaylayalım.

Jar dosyasının projeye dahil edilmesi
Bu işlemi doğru yaptıysanız package explorer üzerinde referenced libraries seçeneğinde dosyanızı görürseniz.
Dosya projeye başarı ile eklenmiş
Bağlantıyı sağlamak için Connection sınıfı kullanılır.
Connection myCon = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/deneme","root","1234");

burada localhost yerel makinayı ifade eder. eğer uzak bir veritabına bağlanılacaksa yerine IP adresi yazılır. 3306 ise mysql için port numarasıdır. "deneme" ise oluşturduğumuz veritabanı ismidir.
"root" ve "1234" ise mysql kurulumunda oluşturduğumuz kullanıcı ve şifresidir.

Temel veri çekme işlemi için select komutu ile veri çekelim;

Statement myStat = (Statement) myCon.createStatement();
ResultSet myRs = myStat.executeQuery("select * from ogrenci");

Öğrenci tablosundan veri çekiyoruz. Burada tablodan gelen veriler bir ResultSet sınıfı ile tutulur. Bu sınıf verileri bir çeşit dizi şeklinde tutar.

Veri leri ise bir döngü ile almamız gerekli;
while(myRs.next()){
System.out.println(myRs.getString("ogr_no")+"."+myRs.getString("ogr_ad")+" "+myRs.getString("ogr_soyad"));
            }

Burada ogr_no, ogr_ad vb. değerler tablonun sütun isminden gelmekteddir.

Program çalıştırmadan önce veritabanı bağlantı kodlarının try/catch bloğu ile sarılması gerektiğini unutmayalım.

Tüm kodlar;
package db;

import java.sql.DriverManager;
import java.sql.ResultSet;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class bgl {

    public static void main(String[] args) {
        try {

    Connection myCon = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/deneme","root","1234");
    Statement myStat = (Statement) myCon.createStatement();
    ResultSet myRs = myStat.executeQuery("select * from ogrenci");
       
            while(myRs.next()){
                System.out.println(myRs.getString("ogr_no")+". "+ myRs.getString("ogr_ad")+" "+myRs.getString("ogr_soyad"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }    } }


Sonuç
 
konsola yazdırılan veriler

Bu dersi video olarak da izleyebilirsiniz;

Hiç yorum yok:

Yorum Gönderme