Kako se povezati s bazom podataka u Javi? - Vodič za JDBC



Ovaj članak će vam reći kako povezati MySQL bazu podataka u Javi. JDBC je jedan od standardnih Java API-ja za povezivanje Java-a i širokog spektra baza podataka neovisno o bazi podataka.

, jedan od najistaknutijih programskih jezika, pruža opsežnu podršku bazama podataka. Pomaže nam u povezivanju s raznim bazama podataka putem (Povezivanje Java baze podataka). U ovom članku ću vam reći kako se povezati s bazom podataka i izvršavati upite pomoću JDBC-a.

U ovom su članku obrađene sljedeće teme:





Uvod u JDBC

JDBC je jedan od standardnih Java API-ja za vezu neovisnu o bazi podataka i širok raspon baza podataka.Ovaj API omogućuje kodiranje izjava zahtjeva za pristup u Strukturirani jezik upita (SQL). Ovajuglavnom uključuje otvaranje veze, stvaranje SQL baze podataka, izvršavanje SQL upita i dolazak na izlaz.

JDBC API može se koristiti za pristup tabličnim podacima pohranjenim u bilo kojoj relacijskoj bazi podataka. Ovim možete ažurirati, spremiti, dohvatiti i izbrisati podatke iz baza podataka. Slično je s otvorenom povezivanjem baze podataka (ODBC) koju pruža Microsoft.



Za bolje razumijevanje rada JDBC-a, zaronimo dublje u temu i shvatimo arhitekturu koja stoji iza Java Database Connectivity.

Uobičajene JDBC komponente

JDBC API nudi sljedeća sučelja i klase & minus

  • DriverManager: To se uglavnom koristi za upravljanje popisom pokretačkih programa baze podataka. Upravljački program koji prepoznaje određeni podprotokol koristit će se za uspostavljanje veze s bazom podataka.



  • Vozač je sučelje koje upravlja komunikacijom s poslužiteljem baze podataka. Također apstrahira detaljekoji su povezani tijekom rada s objektima upravljačkog programa.

  • Veza je sučelje koje se sastoji od svih metoda potrebnih za povezivanje s bazom podataka. Objekt veze bavi se komunikacijskim funkcijama baze podataka. kontekst.

Sada prijeđimo na sljedeću temu i pogledajmo korake potrebne za stvaranje JDBC aplikacije.

Koraci za stvaranje JDBC aplikacije

Da biste stvorili JDBC aplikaciju, morate slijediti nekoliko koraka. Da vidimo što su oni.

Koraci za stvaranje JDBC aplikacije - Napredni Java vodič - Edureka

  1. Uvoz paketa: Morate uključiti sve pakete koji sadrže JDBC klase potrebne za programiranje baze podataka . Najčešće, koristeći import java.sql. * bit će dovoljno.

  2. Registrirajte JDBC upravljački program: Ovdje morate inicijalizirati upravljački program tako da možete otvoriti komunikacijski kanal s bazom podataka.

  3. Otvorite vezu: Ovdje možete koristiti getConnection () metoda za stvaranje objekta Connection, koji predstavlja fizičku vezu s bazom podataka.

  4. Izvršite upit: To zapravo zahtijeva upotrebu objekta tipa Statement za izgradnju i slanje SQL izraza u bazu podataka.

  5. Izdvajanje podataka iz skupa rezultata: Predlaže se da koristite odgovarajuće getXXX () metoda za dohvaćanje podataka iz skupa rezultata.

  6. Očistiti okoliš: Ovdje je bitnoizričito zatvorite sve resurse baze podataka nasuprot oslanjanju na JVM-ovo odvoz smeća.

Sada smo vidjeli razne korake za stvaranje JDBC aplikacije, pogledajmo primjer koda za stvaranje baze podataka i uspostavljanje veze.

kako izaći iz programa u javi -
paket Edureka import java.sql. * import java.sql.DriverManager javna klasa Primjer {// JDBC naziv upravljačkog programa i URL baze podataka statički završni String JDBC_DRIVER = 'com.mysql.jdbc.Driver' statički završni niz DB_URL = 'jdbc: mysql: // localhost / emp '// vjerodajnice baze podataka statički završni Niz USER =' root 'statički završni niz PASS =' 'javna statička void glavna (String [] args) {Connection conn = null Izjava stmt = null try {// KORAK 2 : Registrirajte JDBC upravljački program Class.forName ('com.mysql.cj.jdbc.Driver') // 3. KORAK: Otvorite vezu System.out.println ('Povezivanje s bazom podataka ...') conn = DriverManager.getConnection (DB_URL , 'root', '') // KORAK 4: Izvršite upit System.out.println ('Stvaranje izjave ...') stmt = conn.createStatement () Niz sql sql = 'SELECT id, first, last, age IZ ResultSet zaposlenika rs = stmt.executeQuery (sql) // KORAK 5: Izdvajanje podataka iz skupa rezultata while (rs.next ()) {// Dohvaćanje prema imenu stupca int id = rs.getInt ('id') int age = rs.getInt ('age') String first = rs.getString ('first') String last = rs.getString ('last') // Prikaži vrijednosti System.out.print ('ID:' + id) System.out.print (', Age:' + age) System.out.print (', First : '+ first) System.out.println (', Last: '+ last)} // KORAK 6: Čišćenje okoline rs.close () stmt.close () conn.close ()} catch (SQLException se) {// Obrada pogrešaka za JDBC se.printStackTrace ()} catch (Iznimka e) {// Obrada pogrešaka za Class.forName e.printStackTrace ()} konačno {// konačno blok koji se koristi za zatvaranje resursa try {if (stmt! = null) stmt.close ()} catch (SQLException se2) {} // ništa se ne može pokušati {if (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // kraj konačno pokušaj} // kraj pokušaj System.out.println ('Zbogom!')} // kraj glavni} // kraj Primjer

Iznad koda stvara tablicu u vašoj bazi podataka localhost. Da biste umetnuli vrijednosti u kreiranu bazu podataka, možete se pozvati na donji kod. Kôd ću pisati samo za korak 4. Ostatak koda ostaje isti kao gore.

// KORAK 4: Izvršite upit System.out.println ('Stvaranje tablice u datoj bazi podataka ...') stmt = conn.createStatement () Niz sql = 'STVARI ZAPOSLENE U TABLICI' + '(id INTEGER nije NULL,' + 'prvi VARCHAR (255),' + 'zadnji VARCHAR (255),' + 'dob INTEGER,' + 'PRIMARNI KLJUČ (id))' stmt.executeUpdate (sql) System.out.println ('Izrađena tablica u datoj bazi podataka ... ') System.out.println (' Umetanje zapisa u tablicu ... ') stmt = conn.createStatement () Niz sql =' UMIJENI U VRIJEDNOSTI zaposlenika (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' INSERT INTO Vrijednosti zaposlenika (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO zaposlenici (102, 'Taylor', 'Swift' , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' Umetnuti zapisi u tablicu. .. ')

Dakle, na ovaj način možete uspostaviti vezu s bazom podataka i umetnuti vrijednosti u tablice. Krenimo sada dalje i shvatimo razne vrste JDBC upravljačkih programa

Vrste upravljačkih programa JDBC

JDBC pogonitelji koriste se za implementaciju definiranih sučelja u JDBC API-ju za interakciju s poslužiteljem baze podataka.U osnovi, a JDBC upravljački program radi tri stvari, a one su kako slijedi:
1. Uspostavlja vezu s izvorom podataka.
2. Poslat će upite i ažurirati izjave izvoru podataka.
3. Konačno, obrađuje rezultate.

Na primjer, JDBC upravljački programi pomažu vam da otvorite vezu baze podataka da biste s njom komunicirali slanjem . Ako želite saznati više o vrstama JDBC upravljačkog programa, možete pogledati ovaj članak na .

Krenimo sada dalje i shvatimo JDBC veze.

JDBC veze

  • Uvoz JDBC paketa: Dodati uvoz izjave na vaše za uvoz potrebnih klasa u svoj Java kôd.

  • Registrirajte JDBC upravljački program: u t njegov korak, za učitavanje željene implementacije pokretačkog programa u memoriju kako bi mogao ispuniti JDBC zahtjeve. Postoje 2 pristupa za registraciju vozača.

    • Najprikladniji pristup za registraciju upravljačkog programa je korištenje Java-ovog zaName () metoda za dinamičko učitavanje datoteke klase vozača u memoriju , koji ga automatski registrira. Ova je metoda prikladna jer vam omogućuje da registraciju vozača učinite konfigurabilnom i prenosivom. Pogledajte donji kod:

      pokušajte {Class.forName ('oracle.jdbc.driver.OracleDriver')} catch (ClassNotFoundException ex) System.out.println ('Pogreška: nije moguće učitati klasu vozača!') System.exit (1)}
    • Drugi pristup koji možete koristiti za registraciju upravljačkog programa je uporaba statičkog registerDriver () metoda.

      pokušajte {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} catch (ClassNotFoundException ex) {System.out.println ('Pogreška: nije moguće učitati klasu vozača!') System.exit (1 )}
  • Trebali biste koristiti registerDriver () metodu ako koristite JVM koji nije u skladu s JDK, poput one koju pruža Microsoft. Ovdje svaki obrazac zahtijeva bazu podataka URL .

  • Formulacija URL-a baze podataka: Formulacija URL-a potrebna je za stvaranje pravilno oblikovane adrese koja upućuje na bazu podataka na koju se želite povezati. Nakon što učitate upravljački program, možete uspostaviti vezu pomoću DriverManager.getConnection () metoda. Metode DriverManager.getConnection () su & minus

    kako proći pored vrijednosti u javi
    • getConnection (URL niza)

    • getConnection (URL niza, oslonac svojstava)

    • getConnection (URL niza, korisnik niza, lozinka niza)

  • Stvorite objekt veze

Možete stvoriti vezu pomoću URL-a baze podataka, korisničkog imena i lozinke, a također koristeći objekt svojstva.

  • Zatvoriti

Konačno, da biste završili sesiju baze podataka, morate zatvoriti sve veze s bazom podataka. Međutim, ako zaboravite, Javin sakupljač smeća zatvorit će vezu kad očisti ustajale predmete.

conn.close () // Koristi se za zatvaranje veze

To je bilo sve o povezivanju Java baze podataka. Ako želite znati više o JDBC-u, možete pogledati ovaj članak na . To nas dovodi do kraja članka o ‘kako se povezati s bazom podataka’. Nadam se da sam bacio malo svjetla na vaše znanje na JDBC.

Pogledajte Edureka, pouzdane tvrtke za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta. Ovdje smo da vam pomognemo u svakom koraku na putovanju, jer osim što postajete pitanja za ovaj intervju za javu, donosimo kurikulum koji je dizajniran za studente i profesionalce koji žele biti programer za Javu.

Imate pitanje za nas? Molimo navedite ga u odjeljku za komentare ovog članka 'kako se povezati s bazom podataka', a mi ćemo vam se javiti u najkraćem mogućem roku.