Kuidas ühendada Java andmebaasiga? - JDBC juhendaja



Selles artiklis selgitatakse, kuidas ühendada MySQL-i andmebaas Java-s. JDBC on üks standardsetest Java API-dest Java ja paljude andmebaaside andmebaasist sõltumatuks ühenduvuseks.

, mis on üks silmapaistvamaid programmeerimiskeeli, pakub andmebaasidele ulatuslikku tuge. See aitab meil läbi erinevate andmebaasidega ühenduse luua (Java andmebaaside ühenduvus). Selles artiklis ütlen teile, kuidas JDBC abil andmebaasiga ühendust luua ja päringuid täita.

Selles artiklis käsitletakse järgmisi teemasid:





Sissejuhatus JDBC-sse

JDBC on üks standardsetest Java API-dest andmebaasist sõltumatu ühenduse loomiseks ja laia valikut andmebaase.See API võimaldab teil kodeerida juurdepääsutaotluse avaldused Struktureeritud päringukeel (SQL). Sedahõlmab peamiselt ühenduse avamist, SQL-i andmebaasi loomist, SQL-päringute käivitamist ja seejärel väljundisse jõudmist.

kuidas kasutada spyder pythonit

JDBC API-d saab kasutada mis tahes relatsiooniandmebaasi salvestatud tabeliandmete kasutamiseks. Selle abil saate andmeid andmebaasidest värskendada, salvestada, tuua ja kustutada. See sarnaneb Microsofti pakutava avatud andmebaaside ühenduvusega (ODBC).



JDBC töö paremaks mõistmiseks sukeldugem teemasse sügavamale ja mõistame Java Database Connectivity taga olevat arhitektuuri.

Ühised JDBC komponendid

JDBC API pakub järgmisi liideseid ja klasse ning miinuseid

  • DriverManager: Seda kasutatakse peamiselt andmebaaside draiverite loendi haldamiseks. Teatud alamprotokolli tuvastavat draiverit kasutatakse andmebaasiühenduse loomiseks.



  • Juht on liides, mis haldab sidet andmebaasiserveriga. Samuti abstraktselt üksikasjadmis on seotud draiveri objektidega töötamisel.

  • Ühendus on liides, mis koosneb kõigist andmebaasiga ühenduse loomiseks vajalikest meetoditest. Ühenduse objekt tegeleb andmebaasi kommunikatsioonifunktsioonidega. Sisu.

Nüüd liigume järgmise teema juurde ja uurime JDBC-rakenduse loomiseks vajalikke samme.

JDBC rakenduse loomise sammud

JDBC-rakenduse loomiseks peate järgima mõnda sammu. Vaatame, mis need on.

JDBC-rakenduse loomise sammud - Java täpsem õpetus - Edureka

  1. Pakettide importimine: Peate lisama kõik paketid, mis sisaldavad JDBC klasse, mis on vajalikud andmebaasi programmeerimine . Kõige sagedamini, kasutades import java.sql. * piisab.

  2. Registreerige JDBC draiver: Siin peate draiveri lähtestama, et saaksite andmebaasiga sidekanali avada.

  3. Ühenduse avamine: Siin saate kasutada getConnection () meetod luua ühenduse objekt, mis tähistab füüsilist ühendust andmebaasiga.

    java teisenda topelt int-ks
  4. Käivitage päring: See nõuab tegelikult SQL-lause loomiseks ja andmebaasi esitamiseks objekti Statement tüüpi lauset.

  5. Andmete eraldamine tulemuste komplektist: Soovitatav on kasutada sobivat getXXX () meetod andmete kogumiseks tulemuste kogumist.

  6. Keskkonna puhastamine: Siin on hädavajaliksulgeda selgesõnaliselt kõik andmebaasi ressursid, tuginedes JVM-i prügikoristusele.

Nüüd, kui olete näinud erinevaid JDBC-rakenduse loomisega seotud toiminguid, vaatame andmebaasi loomiseks ja ühenduse loomiseks näidiskoodi.

pakett Edureka import java.sql. * import java.sql.DriverManageri avalik klass Näide {// JDBC draiveri nimi ja andmebaasi URL-i staatiline lõplik string String JDBC_DRIVER = 'com.mysql.jdbc.Driver' staatiline lõplik string DB_URL = 'jdbc: mysql: // localhost / emp '// Andmebaasi mandaadid staatiline lõplik String KASUTAJA =' root 'staatiline lõplik String PASS =' 'avalik staatiline void main (String [] args) {Connection conn = null Avaldus stmt = null proovige {// 1. SAMM : Registreerige JDBC draiver Class.forName ('com.mysql.cj.jdbc.Driver') // 3. SAMM: avage ühendus System.out.println ('Ühendus andmebaasiga ...') conn = DriverManager.getConnection (DB_URL , 'root', '') // 4. SAMM: käivitage päring System.out.println ('Loo lause ...') stmt = conn.createStatement () String sql sql = 'SELECT id, first, last, age FROM Töötajate ResultSet rs = stmt.executeQuery (sql) // 5. SAMM: Andmete eraldamine tulemushulgast while (rs.next ()) {// Too veeru nime järgi int id = rs.getInt ('id') int vanus = rs.getInt ('vanus') String kõigepealt = rs.getString ('esimene') String last = rs.getString ('last') // Kuva väärtused System.out.print ('ID:' + id) System.out.print (', Age:' + age) System.out.print (', First : '+ esimene) System.out.println (', Last: '+ last)} // 6. SAMM: koristuskeskkond rs.close () stmt.close () conn.close ()} catch (SQLException se) {// Käsitsege vigu JDBC se.printStackTrace ()} püüdmisel (erand e) {// Käsitsege vead Class.forName e.printStackTrace ()}} lõpuks {// lõpuks ressursside sulgemiseks kasutatav plokk proovige {if (stmt! = null) stmt.close ()} catch (SQLException se2) {} // midagi ei saa teha proovige {if (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // lõpuks lõpuks proovige} // lõpeta proovige System.out.println ('Hüvasti!')} // end main} // lõpu näide

Ülal olev kood loob tabeli teie kohaliku hosti andmebaasi. Väärtuste lisamiseks loodud andmebaasi saate viidata allolevale koodile. Kirjutan koodi ainult 4. sammu jaoks. Ülejäänud kood jääb samaks nagu ülal.

// 4. SAMM: käivitage päring System.out.println ('Tabeli loomine antud andmebaasis ...') 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 ('Andmebaasis on loodud tabel ... ') System.out.println (' Kirjete sisestamine tabelisse ... ') stmt = conn.createStatement () String sql =' INSERT INTO DIVERSEMENT VALUES (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' INSERT INTO Staff VALUES (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employees (102, 'Taylor', 'Swift') , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO Staff VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' Lisatud tabelisse kirjed. .. ')

Nii saate luua ühenduse andmebaasiga ja sisestada tabelites väärtusi. Nüüd liigume edasi ja mõistame erinevaid JDBC draiveritüüpe

JDBC draiveritüübid

JDBC draivereid kasutatakse JDBC API-s määratletud liideste juurutamiseks andmebaasiserveriga suhtlemiseks.Sisuliselt a JDBC juht teeb kolme asja ja need on järgmised:
1. Loo ühendus andmeallikaga.
2. See saadab päringud ja ajakohastatud avaldused andmeallikale.
3. Lõpuks töötleb see tulemusi.

Näiteks aitavad JDBC draiverid teil avada andmebaasiühenduse, et sellega suhelda, saates . Kui soovite rohkem teada saada JDBC draiveritüüpide kohta, võite sellest artiklist lugeda .

Nüüd liigume edasi ja mõistame JDBC-ühendusi.

JDBC ühendused

  • JDBC pakettide importimine: Lisama import avaldused teie vajalike klasside importimiseks oma Java-koodi.

    ansible vs nukk vs peakokk
  • Registreerige JDBC draiver: aja jooksul tema samm, laadib soovitud draiveri rakenduse mällu, et see saaks täita JDBC taotlusi. Juhi registreerimiseks on kaks lähenemisviisi.

    • Draiveri registreerimiseks on kõige sobivam kasutada Java-d forName () draiveri klassifaili dünaamiliseks laadimiseks mällu , mis registreerib selle automaatselt. See meetod sobib, kuna see võimaldab teil muuta draiverite registreerimise konfigureeritavaks ja kaasaskantavaks. Heitke pilk allpool olevale koodile:

      proovige {Class.forName ('oracle.jdbc.driver.OracleDriver')} püüdmist (ClassNotFoundException ex) System.out.println ('Viga: draiveriklassi laadimine nurjus!') System.exit (1)}
    • Teine lähenemine, mida saate draiveri registreerimiseks kasutada, on staatiline registerDriver () meetod.

      proovige {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} saak (ClassNotFoundException ex) {System.out.println ('Viga: draiveriklassi ei õnnestu laadida!') System.exit (1 )}
  • Peaksite kasutama registerDriver () meetodit, kui kasutate JDK-ga mitte ühilduvat JVM-i, näiteks Microsofti pakutavat. Siin nõuab iga vorm andmebaasi URL .

  • Andmebaasi URL-i koostamine: URL-i vormindamine on vajalik õigesti vormindatud aadressi loomiseks, mis osutab andmebaasile, millega soovite ühenduse luua. Kui olete draiveri laadinud, saate ühenduse luua ühenduse abil DriverManager.getConnection () meetod. Meetodid DriverManager.getConnection () on & miinus

    • getConnection (stringi URL)

    • getConnection (stringi URL, atribuutide atribuudid)

    • getConnection (stringi URL, stringi kasutaja, stringi parool)

  • Looge ühenduse objekt

Ühenduse saate luua andmebaasi URL-i, kasutajanime ja parooli ning omaduste objekti abil.

  • Sulge

Lõpuks peate andmebaasiseansi lõpetamiseks sulgema kõik andmebaasiühendused. Kui aga unustate, sulgeb Java prügivedaja ühenduse, kui koristab vananenud esemeid.

conn.close () // Kasutatakse ühenduse sulgemiseks

See kõik puudutas Java andmebaaside ühenduvust. Kui soovite JDBC kohta rohkem teada saada, võite sellest artiklist lugeda . See viib meid artikli, kuidas andmebaasiga ühenduse luua, lõppu. Loodan, et olen teie teadmistele JDBC-s veidi valgust heitnud.

Vaadake autor Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik koosneb enam kui 250 000 rahulolevast õppijast ja mis levib üle kogu maailma. Oleme siin, et aidata teil igal sammul teie teekonnal, et saada lisaks sellele Java-intervjuu küsimustele välja, pakume välja õppekava, mis on mõeldud õpilastele ja spetsialistidele, kes soovivad olla Java-arendajad.

Kas teil on meile küsimus? Palun mainige seda selle artikli „Kuidas andmebaasiga ühenduse luua” kommentaaride osas ja võtame teiega ühendust niipea kui võimalik.