Nebyl nalezen žádný vhodný ovladač pro JDBC, což je v Javě výjimka, ke které obvykle dochází, když není nalezen žádný ovladač pro vytvoření připojení k databázi. V této části probereme, proč se nám taková chyba zobrazuje a co je třeba udělat, abychom se této výjimky zbavili, aby se příště už nemusela vyskytovat.
Než probereme výjimku, měli bychom se krátce seznámit s tím, co je ovladač JDBC.
Co je ovladač JDBC
The JDBC (Java Database Connectivity) Driver je ovladač, který umožňuje propojení mezi databází a Java softwarem. Ovladač JDBC lze chápat jako ovladač, který umožňuje interakci mezi databází a aplikací Java. V JDBC existují čtyři různé typy ovladačů, které mají být použity podle požadavků aplikace. Tito potápěči JDBC jsou:
- Ovladač mostu JDBC-ODBC
- Ovladač tenké vrstvy
- Nativní ovladač API
- Ovladač síťového protokolu
Všechny čtyři ovladače mají své vlastní použití a také výhody a nevýhody. Chcete-li se dozvědět více o ovladačích JDBC, navštivte: https://www.javatpoint.com/jdbc-driver sekce našeho Java tutoriál .
Co je to chyba a proč k ní dochází?
Obecně platí, že „nenalezen žádný vhodný ovladač“ znamená vyvolání chyby, tj. java.sql.SQLException: Nebyl nalezen žádný vhodný ovladač pro jdbc:mysql://localhost:3306/test “ v konzole. K chybě dochází, když se pokoušíme připojit k MySql (nebo jakékoli jiné) databázi, která existuje na vašem místním počítači, tj. localhost, a naslouchá zadanému číslu portu, které je nastaveno pro mysql, a zjistí, že před vyvoláním souboru nebyl registrován žádný ovladač JDBC. DriverManager.getConnection () nebo jsme možná nepřidali MySQL JDBC ovladač na cestu ke třídě v IDE. V případě, že spouštíme jednoduchý Java kód bez požadavku na konektivitu databáze, Java API jej provede správně a dobře, ale pokud je potřeba ovladač JDBC, je vyvolána chyba, což je chyba „třída nenalezena“. . Jednoduše řečeno, taková chyba je vyvolána, když Java API nenajde žádný vhodný ovladač, který by mohl připojit Java aplikaci k databázi.
Jak odstranit chybu
Nyní je otázkou, jak se takové chyby zbavit. Aby bylo možné problém nebo chybu vyřešit, je třeba přidat MYSQL konektor JAR k classpath, protože classpath obsahuje ovladač JDBC pro MYSQL, přes který je generováno spojení mezi kódem Java a databází. Abychom mohli přidat soubor JAR konektoru MYSQL do IDE nebo nástroje, který používáme, musíme projít několika docela jednoduchými kroky. Tyto kroky jsou následující:
Pro Eclipse a NetBeans IDE
1) Otevřete jakýkoli internetový prohlížeč v systému a na kartě vyhledávání vyhledejte stažení MySQL Connector. Zobrazí se několik odkazů ke stažení. Klikněte na web MYSQL https://www.mysql.com/products/connector/ z něj a stáhněte si nejnovější verzi konektoru MYSQL výběrem specifikací vašeho systému.
2) Po úspěšném stažení MYSQL Connectoru se zobrazí jako výchozí Stahování složku vašeho systému, jak můžete vidět na níže uvedeném úryvku:
3) Nyní otevřete IDE, na kterém pracujete, buď NetBeans nebo Eclipse, a také jakýkoli jiný nástroj/IDE, podle toho, který používáte. Zde jsme použili Eclipse IDE.
4) Přejděte na svůj projekt a klikněte na něj pravým tlačítkem. Zobrazí se seznam možností. Vyberte a klikněte na Cesta sestavení > Konfigurovat cestu sestavení , a otevře se dialogové okno Java Build Path, jak můžete vidět na níže uvedeném úryvku:
5) Klikněte na Přidejte externí JAR a přesuňte se na místo, kde jste stáhli soubor Mysql konektor , jak můžete vidět v následujícím úryvku:
6) Vyberte Mysql konektor a klikněte na OTEVŘENO . Soubor JAR bude přidán do cesty sestavení vašeho projektu, jak můžete vidět v níže uvedeném úryvku:
7) Klikněte na Použít a zavřít a ovladač JDBC bude přidán do vašeho Eclipse IDE.
8) Spusťte kód připojení JDBC ještě jednou a tentokrát se vám nezobrazí výjimka 'Pro JDBC nebyl nalezen žádný vhodný ovladač' namísto jiných chyb, pokud jste udělali jakýkoli jiný problém se syntaxí.
9) Ovladač JDBC se úspěšně připojí a připojení se úspěšně naváže.
Poznámka: Pokud chcete vědět, jak vytvořit připojení JDBC v Javě, navštivte https://www.javatpoint.com/example-to-connect-to-the-mysql-database
Poznámka:
- Pokud používáte Java SE 6 s JDBC 4.0, možná nebudete muset zavádět a registrovat ovladač, protože nová funkce Java poskytuje automatické načítání třídy ovladače JDBC. Díky tomu není vyžadováno použití Class.forName('com.mysql.jdbc.Driver'); prohlášení. Pokud je však JDBC Jar, který používáte, starý, tj. JDBC 4.0 kompatibilní s Java SE 6, možná budete muset vytvořit toto prohlášení.
- Stručně můžeme říci, že k takové chybě dochází, když není do cesty třídy Java přidán žádný soubor JDBC JAR. Potřebujeme pouze přidat soubor JAR do cesty třídy a poté spustit kód. Doufejme, že kód bude úspěšně proveden.