JDBC için uygun bir sürücü bulunamadı, Java'da genellikle veritabanı bağlantısını sağlayacak herhangi bir sürücü bulunamadığında ortaya çıkan bir istisnadır. Bu bölümde neden böyle bir hata aldığımızı ve bir dahaki sefere yaşanmaması için bu istisnadan kurtulmak için ne yapılması gerektiğini tartışacağız.
İstisnayı tartışmadan önce JDBC Sürücüsünün ne olduğuna dair kısa bir bilgi vermeliyiz.
JDBC Sürücüsü Nedir?
JDBC (Java Veritabanı Bağlantısı) Sürücü, bir veritabanı ile Java yazılımı arasında bağlantı kuran bir sürücüdür. JDBC sürücüsü, veritabanı ile Java uygulamasının birbiriyle etkileşime girmesini sağlayan bir sürücü olarak anlaşılabilir. JDBC'de uygulamanın ihtiyacına göre kullanılacak dört farklı sürücü türü vardır. Bu JDBC dalgıçları şunlardır:
- JDBC-ODBC köprü sürücüsü
- İnce Katman sürücüsü
- Yerel API sürücüsü
- Ağ Protokolü Sürücüsü
Dört sürücünün de kendi kullanım alanları, artıları ve eksileri var. JDBC Sürücüleri hakkında daha fazla bilgi edinmek için şu adresi ziyaret edin: https://www.javatpoint.com/jdbc-driver bölümümüz Java eğitimi .
Hata Nedir ve Neden Oluşur?
Genel olarak 'uygun sürücü bulunamadı' ifadesi bir hatanın atılması anlamına gelir, yani ' java.sql.SQLException: jdbc:mysql://localhost:3306/test için uygun sürücü bulunamadı ' Konsolda. Hata, ağa bağlanmaya çalıştığımızda ortaya çıkıyor MySql Yerel makinenizde, yani localhost'ta mevcut olan (veya başka herhangi bir) veri tabanı, mysql için ayarlanan belirtilen bağlantı noktası numarasını dinler ve çağrılmadan önce hiçbir JDBC sürücüsünün kayıtlı olmadığını tespit eder. DriverManager.getConnection () yöntem yoksa eklememiş olabiliriz MySQL JDBC sürücüsü IDE'deki sınıf yoluna. Veritabanı bağlantısı gerektirmeyen basit bir Java kodu çalıştırmamız durumunda, Java API bunu doğru ve iyi bir şekilde yürütür, ancak bir JDBC sürücüsüne ihtiyaç duyulursa 'sınıf bulunamadı' hatası olan bir hata atılır. . Basit bir ifadeyle, Java API'si tarafından Java uygulamasını veritabanına bağlayacak uygun bir sürücü bulunamadığında böyle bir hata atılır.
Hata nasıl kaldırılır
Şimdi soru bu hatadan nasıl kurtulacağımızdır. Sorunu veya hatayı çözmek için şunu eklemeniz gerekir: MYSQL Bağlayıcı JAR'ı sınıf yoluna, çünkü sınıf yolu, Java kodu ile veritabanı arasında bağlantının oluşturulduğu MYSQL için JDBC Sürücüsünü içerir. MYSQL bağlayıcı JAR dosyasını kullandığımız IDE veya araca eklemek için oldukça basit birkaç adımdan geçmemiz gerekiyor. Bu adımlar aşağıdaki gibidir:
Eclipse ve NetBeans IDE'si için
1) Sistemdeki herhangi bir internet tarayıcısını açın ve arama sekmesinde MySQL Connector indirmeyi arayın. Birkaç indirme bağlantısı görünecektir. MYSQL web sitesine tıklayın https://www.mysql.com/products/connector/ buradan ve sistem özelliklerinizi seçerek MYSQL konektörünün en son sürümünü indirin.
2) MYSQL Connector başarıyla indirildikten sonra varsayılan olarak görülecektir. İndirilenler Aşağıdaki kod parçasında görebileceğiniz gibi sisteminizin klasörü:
3) Şimdi, üzerinde çalıştığınız IDE'yi (NetBeans veya Eclipse) ve ayrıca hangisini kullanırsanız kullanın başka herhangi bir aracı/IDE'yi açın. Burada Eclipse IDE'yi kullandık.
4) Projenize gidin ve sağ tıklayın. Bir seçenekler listesi görünecektir. Seçin ve tıklayın Yapı Yolu > Yapı Yolunu Yapılandır ve aşağıdaki kod parçasında görebileceğiniz gibi Java Yapı Yolu iletişim kutusu açılacaktır:
5) tıklayın Harici JAR'lar Ekle ve indirdiğiniz yere gidin MySQL Bağlayıcısı , aşağıdaki kod parçasında görebileceğiniz gibi:
6) seçin MySQL Bağlayıcısı ve tıklayın Açık . Aşağıdaki kod parçasında görebileceğiniz gibi JAR dosyası proje oluşturma yolunuza eklenecektir:
7) Tıklayın Uygula ve Kapat ve JDBC Sürücüsü Eclipse IDE'nize eklenecektir.
8) JDBC bağlantı kodunu bir kez daha çalıştırın ve başka bir sözdizimi sorunu yaptıysanız bu kez diğer hatalar yerine 'JDBC için uygun sürücü bulunamadı' istisnasını almayacaksınız.
9) JDBC Sürücüsü başarıyla bağlanacak ve bağlantı başarıyla kurulacaktır.
Not: Java'da JDBC Bağlantısının nasıl yapılacağını öğrenmek istiyorsanız şu adresi ziyaret edin: https://www.javatpoint.com/example-to-connect-to-the-mysql-database
Dikkat edilmesi gereken nokta:
- JDBC 4.0 ile Java SE 6 kullanıyorsanız, yeni Java özelliği JDBC sürücü sınıfının otomatik olarak yüklenmesini sağladığından sürücüyü yüklemeniz ve kaydetmeniz gerekmeyebilir. Bu nedenle Class.forName('com.mysql.jdbc.Driver'); kullanımına gerek yoktur. ifade. Ancak kullandığınız JDBC Jar'ı eskiyse, yani JDBC 4.0, Java SE 6 ile uyumluysa bu ifadeyi oluşturmanız gerekebilir.
- Kısaca Java'nın sınıf yoluna JDBC JAR dosyası eklenmediğinde böyle bir hata oluştuğunu söyleyebiliriz. Sadece JAR dosyasını sınıf yoluna eklememiz ve ardından kodu çalıştırmamız gerekiyor. Kodun başarıyla yürütüleceğini umuyoruz.