Ingen passende driver fundet til JDBC er en undtagelse i Java, der generelt opstår, når der ikke findes nogen driver til at oprette databaseforbindelsen. I dette afsnit vil vi diskutere, hvorfor vi får en sådan fejl, og hvad der skal gøres for at slippe af med denne undtagelse, så den måske ikke opstår næste gang.
Før vi diskuterer undtagelsen, bør vi tage en kort viden om, hvad der er en JDBC-driver.
Hvad er en JDBC-driver
Det JDBC (Java Database Connectivity) Driver er en driver, der skaber forbindelse mellem en database og Java-software. JDBC-driveren kan forstås som en driver, der lader databasen og Java-applikationen interagere med hinanden. I JDBC er der fire forskellige typer drivere, der skal bruges i henhold til applikationens krav. Disse JDBC dykkere er:
- JDBC-ODBC bro driver
- Thin Layer driver
- Native API driver
- Driver til netværksprotokol
Alle fire drivere har deres eget brug samt fordele og ulemper. For at vide mere om JDBC-drivere, besøg: https://www.javatpoint.com/jdbc-driver afsnit af vores Java tutorial .
Hvad er fejlen, og hvorfor opstår den?
Generelt refererer 'ingen passende driver fundet' til at smide en fejl, dvs. java.sql.SQLEundtagelse: Ingen passende driver fundet til jdbc:mysql://localhost:3306/test ' i konsollen. Fejlen opstår, når vi forsøger at oprette forbindelse til MySql (eller en hvilken som helst anden) database, der findes på din lokale maskine, dvs. localhost, og lytter til det angivne portnummer, som er indstillet til mysql, og det konstaterede, at der enten ikke var registreret nogen JDBC-driver, før den påkaldte DriverManager.getConnection () metode, ellers har vi måske ikke tilføjet MySQL JDBC driver til klassestien i IDE. I tilfælde af at vi kører en simpel Java-kode uden krav om databaseforbindelse, udfører Java API den korrekt og godt, men hvis der er behov for en JDBC-driver, bliver der kastet en fejl, som er fejlen 'klassen ikke fundet' . Med enkle ord bliver en sådan fejl smidt, når der ikke findes nogen passende driver af Java API, så den kunne forbinde Java-applikationen til databasen.
Sådan fjerner du fejlen
Nu er spørgsmålet, hvordan man slipper af med en sådan fejl. For at løse problemet eller fejlen skal man tilføje MYSQL-stik JAR til klassestien, fordi klassestien inkluderer JDBC-driveren til MYSQL, hvorigennem forbindelsen genereres mellem Java-koden og databasen. For at tilføje MYSQL-stikket JAR-filen til den IDE eller det værktøj, vi bruger, skal vi gennemgå nogle ganske enkle trin. Disse trin er som følger:
Til Eclipse og NetBeans IDE
1) Åbn en hvilken som helst internetbrowser på systemet og søg efter MySQL Connector download i søgefanen. Der vises flere downloadlinks. Klik på MYSQL-webstedet https://www.mysql.com/products/connector/ fra den og download den seneste version af MYSQL-stikket ved at vælge dine systemspecifikationer.
2) Efter den succesfulde download af MYSQL Connector, vil den blive set som standard Downloads mappe på dit system, som du kan se i nedenstående uddrag:
3) Åbn nu den IDE, du arbejder på, enten NetBeans eller Eclipse, og også ethvert andet værktøj/IDE, hvad end du bruger. Her har vi brugt Eclipse IDE.
4) Gå til dit projekt og højreklik på det. En liste over muligheder vises. Vælg og klik på Byg sti > Konfigurer byggesti , og Java Build Path-dialogboksen åbnes, som du kan se i nedenstående uddrag:
5) Klik på Tilføj eksterne JAR'er og flyt til det sted, hvor du har downloadet Mysql Connector , som du kan se i nedenstående uddrag:
6) Vælg Mysql Connector og klik på Åben . JAR-filen vil blive tilføjet til din projektopbygningssti, som du kan se i nedenstående uddrag:
7) Klik på Anvend og luk , og JDBC-driveren vil blive tilføjet til din Eclipse IDE.
8) Kør JDBC-forbindelseskoden igen, og denne gang vil du ikke få undtagelsen 'Ingen passende driver fundet til JDBC' i stedet for andre fejl, hvis du lavede andre syntaksproblemer.
9) JDBC-driveren bliver forbundet med succes, og forbindelsen etableres med succes.
Bemærk: Hvis du vil vide, hvordan man laver JDBC Connectivity i Java, så besøg https://www.javatpoint.com/example-to-connect-to-the-mysql-database
Punkt der skal bemærkes:
- Hvis du bruger Java SE 6 med JDBC 4.0, behøver du muligvis ikke at indlæse og registrere driveren, fordi den nye Java-funktion giver automatisk indlæsning af JDBC-driverklassen. Derfor er der ikke noget krav om at bruge Class.forName('com.mysql.jdbc.Driver'); udmelding. Men hvis den JDBC Jar, du bruger, er gammel, dvs. JDBC 4.0 kompatibel med Java SE 6, skal du muligvis oprette denne erklæring.
- Kort sagt kan vi sige, at en sådan fejl opstår, når ingen JDBC JAR-fil tilføjes til Javas klassesti. Vi skal blot tilføje JAR-filen til klassestien og derefter udføre koden. Koden bliver forhåbentlig eksekveret med succes.