Sådan opretter du forbindelse til en database i Java? - JDBC vejledning



Denne artikel fortæller dig, hvordan du opretter forbindelse til MySQL-database i Java. JDBC er en af ​​standard Java API til database-uafhængig forbindelse mellem Java og en bred vifte af databaser.

, der er et af de mest fremtrædende programmeringssprog, yder omfattende support til databaser. Det hjælper os med at oprette forbindelse til forskellige databaser igennem (Java-databaseforbindelse). I denne artikel vil jeg fortælle dig, hvordan du opretter forbindelse til en database og udfører forespørgsler ved hjælp af JDBC.

Nedenstående emner er dækket af denne artikel:





Introduktion til JDBC

JDBC er en af ​​standard Java API til database-uafhængig forbindelse mellem og en bred vifte af databaser.Denne API giver dig mulighed for at kode erklæringer om adgangsanmodning i Struktureret forespørgselssprog (SQL). Detteinvolverer primært at åbne en forbindelse, oprette en SQL-database, udføre SQL-forespørgsler og derefter ankomme til output.

JDBC API kan bruges til at få adgang til tabeldata, der er gemt i enhver relationsdatabase. Med dette kan du opdatere, gemme, hente og slette data fra databaser. Det svarer til Open Database Connectivity (ODBC) leveret af Microsoft.



For en bedre forståelse af JDBC's arbejde, lad os dykke dybere ned i emnet og forstå arkitekturen, der ligger bag Java Database Connectivity.

Almindelige JDBC-komponenter

JDBC API giver følgende grænseflader og klasser og minus

  • DriverManager: Dette bruges hovedsageligt til at styre en liste over databasedrivere. Driveren, der genkender en bestemt underprotokol, bruges til at oprette en databaseforbindelse.



  • Føreren er en grænseflade, der håndterer kommunikationen med databaseserveren. Det abstraherer også detaljerneder er tilknyttet, mens du arbejder med driverobjekter.

  • En forbindelse er en grænseflade, der består af alle de metoder, der kræves for at oprette forbindelse til en database. Forbindelsesobjektet beskæftiger sig med databasens kommunikationsfunktioner. sammenhæng.

    flet sorteringsprogram i java

Lad os nu gå videre til næste emne og se på de nødvendige trin for at oprette en JDBC-applikation.

Trin til oprettelse af JDBC-applikation

For at oprette en JDBC-applikation skal du følge et par trin. Lad os se, hvad de er.

Trin til oprettelse af JDBC-applikation - Avanceret Java-tutorial - Edureka

  1. Importer pakkerne: Du skal medtage alle de pakker, der indeholder de JDBC-klasser, du har brug for databaseprogrammering . Oftest ved hjælp af importer java.sql. * vil være tilstrækkelig.

  2. Registrer JDBC-driveren: Her skal du initialisere en driver, så du kan åbne en kommunikationskanal med databasen.

  3. Åbn en forbindelse: Her kan du bruge getConnection () metode til at oprette et forbindelsesobjekt, der repræsenterer en fysisk forbindelse med databasen.

    hvad gør system.exit (0) i java
  4. Udfør en forespørgsel: Dette kræver faktisk at bruge et objekt af typen Statement til at opbygge og sende en SQL-sætning til databasen.

  5. Uddrag data fra resultatsættet: Det anbefales, at du bruger det relevante getXXX () metode til at hente dataene fra resultatsættet.

  6. Ryd miljøet op: Her er det vigtigt ateksplicit lukke alle databaseressourcer versus at stole på JVM's affaldssamling.

Nu da du har set forskellige trin involveret i at oprette en JDBC-applikation, lad os se en eksempelkode for at oprette en database og oprette en forbindelse.

pakke Edureka import java.sql. * import java.sql.DriverManager offentlig klasse Eksempel {// JDBC driver navn og database URL statisk endelig String JDBC_DRIVER = 'com.mysql.jdbc.Driver' statisk endelig String DB_URL = 'jdbc: mysql: // localhost / emp '// Database legitimationsoplysninger statisk endelig streng USER =' root 'statisk endelig streng PASS =' 'offentlig statisk ugyldig hoved (String [] args) {Forbindelse conn = null Erklæring stmt = null prøve {// TRIN 2 : Registrer JDBC-driver Class.forName ('com.mysql.cj.jdbc.Driver') // TRIN 3: Åbn en forbindelse System.out.println ('Opretter forbindelse til database ...') conn = DriverManager.getConnection (DB_URL , 'root', '') // TRIN 4: Udfør en forespørgsel System.out.println ('Opretter erklæring ...') stmt = conn.createStatement () String sql sql = 'VÆLG id, første, sidste, alder FRA medarbejderes ResultSet rs = stmt.executeQuery (sql) // TRIN 5: Uddrag data fra resultatsæt mens (rs.next ()) {// Hent ved kolonnenavn int id = rs.getInt ('id') int alder = rs.getInt ('age') String first = rs.getString ('first') String sidste = rs.getString ('sidste') // Vis værdier System.out.print ('ID:' + id) System.out.print (', Age:' + age) System.out.print (', First : '+ første) System.out.println (', Sidste: '+ sidste)} // TRIN 6: Oprydningsmiljø rs.close () stmt.close () connect.close ()} catch (SQLException se) {// Håndter fejl til JDBC se.printStackTrace ()} fangst (Undtagelse e) {// Håndter fejl til Class.forName e.printStackTrace ()} endelig {// endelig blok bruges til at lukke ressourcer prøv {if (stmt! = null) stmt.close ()} catch (SQLException se2) {} // intet kan gøres, prøv {hvis (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // slut endelig prøv} // slut prøv System.out.println ('Farvel!')} // slut hoved} // slut Eksempel

Ovenstående kode opretter en tabel i din localhost-database. For at indsætte værdierne i den oprettede database kan du henvise til nedenstående kode. Jeg skriver kun koden i trin 4. Resten af ​​koden forbliver den samme som ovenfor.

// TRIN 4: Udfør en forespørgsel System.out.println ('Opretter tabel i en given database ...') stmt = conn.createStatement () String sql = 'CREATE TABLE EMPLOYEES' + '(id INTEGER not NULL,' + 'first VARCHAR (255),' + 'last VARCHAR (255),' + 'age INTEGER,' + 'PRIMARY KEY (id))' stmt.executeUpdate (sql) System.out.println ('Oprettet tabel i given database ... ') System.out.println (' Indsættelse af poster i tabellen ... ') stmt = conn.createStatement () String sql =' INDSÆT I MEDARBEJDERS VÆRDIER (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' INDSÆT I MEDARBEJDERE VÆRDIER (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees (102, 'Taylor', 'Swift' , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' indsatte poster i tabellen. .. ')

Så dette er, hvordan du kan oprette en forbindelse til databasen og indsætte værdier i tabellerne. Lad os nu gå videre og forstå forskellige JDBC-drivertyper

JDBC-drivertyper

JDBC-drivere bruges til at implementere de definerede grænseflader i JDBC API til interaktion med databaseserveren.I det væsentlige er en JDBC-driver gør tre ting, og de er som følger:
1. Opretter forbindelse til en datakilde.
2. Det sender forespørgsler og opdaterer udsagn til datakilden.
3. Endelig behandler den resultaterne.

For eksempel hjælper JDBC-drivere dig med at åbne en databaseforbindelse for at interagere med den ved at sende . Hvis du ønsker at vide mere om typer af JDBC Driver, kan du henvise til denne artikel på .

Lad os nu gå videre og forstå JDBC Connections.

JDBC-forbindelser

  • Importér JDBC-pakker: Tilføje importere udsagn til din for at importere krævede klasser i din Java-kode.

    ansible vs marionet vs kok
  • Registrer JDBC Driver: In t hans skridt, for at indlæse den ønskede driverimplementering i hukommelsen, så den kan opfylde JDBC-anmodningerne. Der er to måder at registrere en driver på.

    • Den mest egnede metode til at registrere en driver er at bruge Java'er forName () metode til dynamisk at indlæse driverklassefilen i hukommelsen , som automatisk registrerer det. Denne metode er velegnet, da den giver dig mulighed for at gøre driverregistreringen konfigurerbar og bærbar. Se på nedenstående kode:

      prøv {Class.forName ('oracle.jdbc.driver.OracleDriver')} fangst (ClassNotFoundException ex) System.out.println ('Fejl: kan ikke indlæse driverklasse!') System.exit (1)}
    • Den anden tilgang, du kan bruge til at registrere en driver, er at bruge det statiske registerDriver () metode.

      prøv {Driver myDriver = ny oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} fangst (ClassNotFoundException ex) {System.out.println ('Fejl: kan ikke indlæse driverklasse!') System.exit (1 )}
  • Du skal bruge registerDriver () metode, hvis du bruger en ikke-JDK-kompatibel JVM, som den, der leveres af Microsoft. Her kræver hver formular en database URL .

  • Database URL formulering: URL-formulering er nødvendig for at oprette en korrekt formateret adresse, der peger på den database, som du vil oprette forbindelse til. Når du har indlæst driveren, kan du oprette en forbindelse ved hjælp af DriverManager.getConnection () metode. DriverManager.getConnection () metoder er & minus

    • getConnection (String url)

    • getConnection (String url, Properties prop)

    • getConnection (streng url, streng bruger, streng adgangskode)

  • Opret et forbindelsesobjekt

Du kan oprette en forbindelse ved hjælp af database-URL, brugernavn og adgangskode og også ved hjælp af egenskabsobjekt.

  • Tæt

Endelig skal du lukke alle databaseforbindelser for at afslutte databasesessionen. Men hvis du glemmer det, lukker Java's affaldssamler forbindelsen, når den rydder op for gamle genstande.

conn.close () // Bruges til at lukke forbindelsen

Det handlede kun om Java Database Connectivity. Hvis du ønsker at vide mere om JDBC, kan du henvise til denne artikel på . Dette bringer os til slutningen af ​​artiklen om 'hvordan man opretter forbindelse til en database'. Jeg håber, jeg har kastet lidt lys over din viden om JDBC.

Tjek af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Vi er her for at hjælpe dig med hvert trin på din rejse, for at blive et udover dette java-interviewspørgsmål, kommer vi med en læseplan, der er designet til studerende og fagfolk, der ønsker at være Java-udvikler.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne artikel 'Sådan oprettes forbindelse til en database', så vender vi tilbage hurtigst muligt.