java jdbc tutorial what is jdbc
Temel bilgilerden başlayarak, bu JDBC öğreticisi Java Veritabanı Bağlantısındaki (JDBC) bileşenleri, mimariyi ve sürücü türlerini açıklar:
Bu eğitici, JDBC'nin ne olduğunu, şimdiye kadar piyasaya sürülen sürümlerini, JDBC ile devam etmeden önce gerekli olan ön koşulların neler olduğunu, Sürücü türlerini vb. Açıklar. Bu eğitimin sonunda, Java Veritabanı Bağlantısı veya JDBC'nin temellerini ve nerede olduğunu öğreneceksiniz. kullanabilir miyiz?
Bu eğiticiye JDBC'nin temelleri ile başlayalım.
Ne öğreneceksin:
Java JDBC Öğreticilerinin Listesi
Öğretici 1: JDBC (Java Veritabanı Bağlantısı) Nedir (Bu Eğitim)
Öğretici # 2: Programlama Örneği ile Java JDBC Bağlantısı Eğitimi
Öğretici 3: JDBC DriverManager, JDBC PreparedStatement And Statement
Eğitim 4: JDBC ResultSet: Verileri Almak İçin Java ResultSet Nasıl Kullanılır
Öğretici 5: Örneklerle Java JDBC İşlem Yönetimi
Öğretici # 6: JDBC Özel Durum İşleme - SQL İstisnalarını İşleme
Eğitim 7: JDBC Toplu İşleme ve Depolanan Prosedür Eğitimi
Eğitim # 8: En İyi 25+ JDBC Röportaj Soruları ve Cevapları
JDBC nedir
Java uygulamalarının çoğunda, verileri almak, işlemek ve işlemek için her zaman veritabanları ile etkileşim kurma ihtiyacı vardır. Bu amaçla Java JDBC tanıtıldı.
JDBC, Java Veritabanı Bağlantısı için yaygın olarak kullanılan kısa biçimdir. JDBC'yi kullanarak Oracle, MySQL, MS Access gibi farklı İlişkisel Veritabanları ile etkileşim kurabiliriz.
JDBC'den önce, veritabanına bağlanmak ve işlem yapmak için ODBC API tanıtıldı. ODBC, C programlama dilinde yazıldığı için platforma bağımlı olan bir ODBC sürücüsü kullanır. JDBC API, Java dilinde yazılmıştır, platformdan bağımsızdır ve kendisini Java platformundan bağımsız kılar.
Aşağıdaki şema, JDBC'nin temel akışını göstermektedir:
JDBC Sürümleri
Başlangıçta Sun Microsystems, JDBC'yi 19 Şubat 1997'de JDK 1.1'de yayınladı. Bundan sonra Java Platformunun bir parçası oldu.
Aşağıdaki tablo, JDBC sürümlerini ve uygulamalarını içerir:
JDBC Sürümü | JDK Uygulaması | Yıl |
---|---|---|
JDBC 4.3 | Java SE 9 | 2017 |
JDBC 1.2 | JDK 1.1 | 1997 |
JDBC 2.1 | JDK 1.2 | 1999 |
JDBC 3.0 | JDK 1.4 | 2001 |
JDBC 4.0 | Java SE 6 | 2006 |
JDBC 4.1 | Java SE 7 | 2011 |
JDBC 4.2 | Java SE 8 | 2014 |
Önkoşul
JDBC eğitimine geçmeden önce, Java programlarında JDBC'yi kullanabilmek için Java hakkında iyi bilgiye sahip olmanız gerekir.
=> Önerilen Okuma: Java Öğreticileri
Java Uygulamalarında JDBC uygulamak için ön koşullar aşağıdaki gibidir:
1. Java uygulaması oluşturmak ve JDBC kullanmak istediğiniz sistemde Java kurulu olmalıdır.
Buna bakın bağlantı Java kurulumu için.
iki. DBMS'ye bağlanmak için uygun JDBC sürücü jar dosyalarına sahip olmanız gerekir. Her veritabanı, farklı JDBC sürücü jar dosyalarına sahiptir.
Aşağıdaki tablodaki bağlantıları kullanarak bu dosyaları belirli bir veritabanı için indirebilirsiniz:
İndirme Bağlantısı ile Veritabanı | JDBC Sürücü Sağlayıcı Adı | JAR Dosya Adı |
---|---|---|
MySQL | Oracle Corporation | MySQLmysql-connector-java-VERSION.jar |
Oracle | Oracle Corporation | Oracleojdbc8.jar |
SQL Server | Microsoft şirketi | SQL Serversqljdbc41.jar, sqljdbc42.jar |
Postgre SQL | PostgreSQL Küresel Geliştirme Grubu | Postgre SQLpostgresql-VERSION.jar |
SQLite | Xerial.org | sqlite-jdbc-VERSION.jar |
MS Erişimi | UCanAccess.com | MS Erişimiucanaccess-VERSION.jar |
JDBC'de Sürücü Türleri
Şimdi, programınıza uygun olanı seçmenize yardımcı olması için JDBC'deki sürücü türlerini tartışalım.
Sistemlerinin dışından erişilecekse tüm RDMS (İlişkisel Veritabanı Yönetim Sistemi) bir sürücüye ihtiyaç duyar. Bu nedenle, SQL sorgularını yürütmek ve sonucu veritabanından almak için JDBC Sürücüsü gerekir.
JDBC'de 4 farklı Sürücü türü vardır. Bir Veritabanına erişmek için kullanılan tekniğe göre sınıflandırılırlar.
Bunlar aşağıdaki gibidir:
- Tip I: JDBC- ODBC Köprüsü
- Tip II: Yerel APT- Kısmen Java Sürücüsü
- Tip III: Ağ Protokolü - Tam Java Sürücüsü
- Tip IV: İnce Sürücü - Tam Java Sürücüsü
Tip I: JDBC- ODBC Köprüsü
Bu tip Sürücüde, JDBC - ODBC Köprüsü, istemci ve DB sunucusu arasında bir arayüz görevi görür. Bir kullanıcı JDBC - ODBC Bridge kullanarak veritabanına istek göndermek için Java uygulamasını kullandığında, önce JDBC API'yi ODBC API'ye dönüştürür ve ardından veritabanına gönderir. Sonuç DB'den alındığında ODBC API'ye ve ardından JDBC API'ye gönderilir.
Bu Sürücü platforma bağlıdır çünkü işletim sisteminin yerel kitaplığına bağlı olan ODBC kullanır. Bu Tipte, JDBC - ODBC sürücüsü her istemci sistemine kurulmalı ve veritabanı ODBC sürücüsünü desteklemelidir.
İstemci makinedeki kurulumun önemi olmadığında, bu sürücüyü kullanabiliriz. Kullanımı kolaydır ancak JDBC yöntemi çağrılarının ODBC yöntem çağrılarına dönüştürülmesi nedeniyle düşük performans sağlar.
Not: JDK 1.2'de mevcuttur.
Java 8, bu tür sürücüyü desteklemez. Oracle, kullanıcının Veritabanı satıcıları tarafından sağlanan JDBC sürücülerinden yararlanmasını önerir.
Şekil: Tip I: JDBC - ODBC Köprü Sürücüsü
Tür II: Yerel API - Kısmen Java Sürücüsü
Tip I Sürücüsüne benzer. Burada, ODBC bölümü Tip II Sürücüsündeki yerel kodla değiştirilir. Bu yerel kod bölümü, belirli bir veritabanı ürününü hedef alır. Veritabanının istemci tarafının kitaplıklarını kullanır. Bu Sürücü, JDBC yöntemi çağrılarını veritabanı yerel API'sinin yerel çağrılarına dönüştürür.
Veritabanı, kullanıcıdan talepleri aldığında, istekler işlenir ve sonuçları JDBC formatına çevrilecek ve Java uygulamasına verilecek olan native formatta geri gönderilir.
Uygulaması hızlı ve ucuz olduğu için DB satıcıları tarafından anında benimsendi. Aynı zamanda DB'nin yerel biçimindedir.
Bu tür bir sürücü, Tip I sürücüsünden daha hızlı yanıt ve performans sağlar.
Şekil: Tip II: Yerel APT - Kısmen Java Sürücüsü
Tip III: Ağ Protokolü
Tip III sürücü tamamen Java ile yazılmıştır. Veritabanına erişmek için 3 katmanlı bir yaklaşım gibidir. JDBC yöntemi çağrılarını bir ara sunucuya gönderir. JDBC adına, ara sunucu veritabanı ile iletişim kurar. Uygulama sunucusu (orta veya orta katman) JDBC çağrılarını doğrudan veya dolaylı olarak satıcıya özgü Veritabanı protokolüne dönüştürür.
Bu yaklaşım mimari verimliliğini artırmaz ve aynı zamanda maliyetlidir, çünkü veritabanı satıcılarının çoğu bu sürücüyü tercih etmez. Uygulama sunucusu kullanıldığından, bu yaklaşımı verimli bir şekilde kullanmak için uygulama sunucusu hakkında iyi bilgiye sahip olmanız gerekir.
Şekil: Tip III: Ağ Protokolü - Tam Java Sürücüsü
Tip IV: İnce Sürücü
Tip IV sürücüsü, JDBC çağrılarını doğrudan satıcıya özgü Veritabanı protokolüne dönüştüren doğrudan uygulanır. Bugün, JDBC Sürücülerinin çoğu tip IV sürücülerdir. Tamamen Java ile yazılmıştır ve bu nedenle platformdan bağımsızdır. İstemcinin JVM (Java Sanal Makinesi) içine kurulur, bu nedenle istemci veya sunucu tarafına herhangi bir yazılım yüklemeniz gerekmez. Bu sürücü mimarisi, tek bir sürücüde DB ile doğrudan iletişim kurmak için tüm mantığa sahiptir.
Diğer tip sürücülerden daha iyi performans sağlar. Kolay dağıtım sağlar. Günümüzde bu tür bir sürücü, veritabanı satıcısı tarafından geliştirilmektedir, böylece programcılar onu diğer kaynaklara bağımlı olmadan doğrudan kullanabilirler.
Şekil: Tip IV: İnce Sürücü - Tam Java Sürücüsü
JDBC Uygulamaları
JDBC, Java uygulamalarında, Applet'lerde, Servlet'lerde veya DB'ye bağlanmak istediğiniz diğer Java programlarında kullanılabilir.
Örneğin, Bağımsız Uygulamalar, Web Siteleri, Bankacılık Uygulamaları vb.,
JDBC'nin Mimarisi ve Bileşenleri
JDBC Mimarisi: DB'ye erişmek için iki tür işleme modelini destekler.
Bunlar:
- İki katmanlı Mimari
- Üç katmanlı Mimari
# 1) İki katmanlı Mimari:
Java uygulamasının doğrudan veri tabanına bağlanmasına yardımcı olur. Belirli bir DB ile iletişim için bir JDBC sürücüsüne ihtiyaç duyar. Kullanıcı istekleri DB'ye gönderir ve yanıtı JDBC Sürücüsü dışında herhangi bir aracı olmadan doğrudan alır. Aynı makinedeki veya uzaktaki bir makinedeki veritabanı bir ağ üzerinden bağlanır. İstemci-sunucu mimarisi olarak adlandırılabilir.
# 2) Üç Katmanlı Mimari:
İki katmanlı mimarinin tam tersidir. Kullanıcı ile veritabanı arasında doğrudan bir iletişim yoktur. Kullanıcı talebi, talebin tekrar Veritabanına gönderildiği orta kademeye (Uygulama Sunucusu) gönderir. Daha sonra veritabanı talebi işler ve sonucu, kullanıcının sonucu / yanıtı aldığı orta kademeye gönderir.
Dağıtımı ve yönetimi basitleştirir. Yönetim Bilgi Sistemi (MIS) yöneticileri, kurumsal verilere erişim kontrolü ve güncellemeleri sürdürmeyi kolaylaştırdığı için bu mimariyi kullanır.
Üç katmanlı Mimari
JDBC Bileşenleri
JDBC'de 4 ana bileşen mevcuttur. Onlar:
- JDBC API
- JDBC Sürücü Yöneticisi
- JDBC Test Paketi
- JDBC - ODBC Köprüsü
# 1) JDBC API'si: Herhangi bir Java programından ilişkisel veritabanlarına erişim sağlar. JDBC API, geliştiriciler için standart bir araç / API sağlayan Java dilinde yazılmış bir dizi sınıf ve arabirime sahiptir. JDBC API'yi kullanarak, SQL sorguları oluşturabilir ve yürütebilir, sonucu alabilir, verilerde değişiklikler yapabilir ve sonuçları veritabanına geri kaydedebilirsiniz.
Oracle, MySQL, MS Access gibi çoklu veritabanları ile tek bir Java programından etkileşim kurabilir. JDBC API ile, Oracle DB'ye erişmek için bir program, MySQL'e erişmek için başka bir program, MS Access'e erişmek için başka bir program vb. Yazmak gerekli değildir.
JDBC API, hem Java Standard Edition (Java SE) hem de Java Enterprise Edition (Java EE) içeren Java Platformunun bir parçasıdır.
JDBC 4.0 API'nin 2 paketi vardır.
- Java.sql
- Javax.sql
Her iki paket de Java SE ve Java EE'de mevcuttur.
# 2) JDBC Sürücü Yöneticisi: JDBC'nin geleneksel yönetim katmanı Sürücü Yöneticisidir ve kullanıcı ile sürücüler arasında bir arayüz görevi görür. Kullanılabilir sürücülerin izleme ayrıntılarını tutar ve veritabanı ile uygun sürücü arasında bağlantı kurar. Java uygulamasını JDBC Sürücüsüne bağlayabilen nesneleri tanımlar. Bu nedenle, JDBC API'nin bel kemiğidir.
Sürücü Yöneticisini bir sonraki eğitimde tartışacağız.
# 3) JDBC Test Paketi: JDBC Sürücülerinin programı çalıştırıp çalıştırmayacağını bulmaya yardımcı olur. Programın JDBC Sürücüleri tarafından çalıştırılacağına dair güven ve uygunluk sağlar.
# 4) JDBC- ODBC Köprüsü: Bu, ODBC sürücülerinin JDBC Sürücüleri olarak kullanılmasını sağlar. Bu eğitimdeki sürücü türleri bölümünde zaten ele alınan TİP I sürücüsüne benzer.
Dikkat edilmesi gereken kilit noktalar:
- JDBC, Java uygulaması, Applet'ler, Servlet'ler gibi herhangi bir Java programından veri tabanıyla etkileşimde bulunmak için kullanılır.
- JDBC'nin en son sürümü JDBC 4.3'tür. 21'den beri kararlı bir sürümdürstEylül 2017.
- Tip I sürücüsü: JDBC ODBC Bridge - kullanımı kolaydır ancak ODBC platforma bağlıdır. Aynı zamanda düşük performanslı bir sürücüdür.
- Tip II sürücü: Yerel API - Yerel kod bölümü, Tip I sürücüdeki ODBC bölümünün yerini aldı ve belirli bir veritabanı ürününü hedefledi. Tip I Sürücüsünden daha hızlıdır.
- Tip III sürücü: Orta Katman veya Uygulama Sunucusu, JDBC Sürücüsü ile veritabanı arasında bir arayüz olarak kullanılır. Etkili bir şekilde kullanmak için Uygulama Sunucusu bilgisi gereklidir.
- Tip IV sürücüsü: JDBC Driver, veritabanı ile anında iletişim kurar. Veritabanı satıcıları bu tür bir sürücü kullanıyor ve bunu müşterilere veya geliştiricilere sağlıyor.
- JDBC, Java dilinde yazılmış herhangi bir programda kullanılabilir.
Sonuç
Bu JDBC eğitiminde, JDBC'nin temellerini ve JDBC'ye geçmeden önce gerekli olan ön koşulları öğrendik. Geliştiricilerin programlarda kullanılacak sürücü türüne karar vermesine yardımcı olan sürümlerini ve 4 sürücü türünü gördük.
Ayrıca JDBC'nin mimarisini ve 4 temel bileşenini de tartıştık.
Önerilen Kaynaklar
- JDBC DriverManager, JDBC PreparedStatement And Statement
- ChromeDriver Selenium Eğitimi: Chrome'da Selenium Webdriver Testleri
- Java SWING Eğitimi: Konteyner, Bileşenler ve Olay İşleme
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- Apache POI Kullanan Selenium WebDriver'da Veriye Dayalı Çerçeve
- Selenium WebDriver switchTo () Yöntemini Kullanarak iFrame'leri Kullanma
- Kod Örneği ile Selenium Webdriver ile Erişilebilirlik Testi
- Selenium WebDriver'ı Farklı Popüler Tarayıcılarda Çalıştırma