Paano Kumonekta Sa Isang Database sa Java? - Tutorial sa JDBC



Sasabihin sa iyo ng artikulong ito kung paano ikonekta ang MySQL database sa Java. Ang JDBC ay isa sa pamantayan ng Java API para sa koneksyong independiyenteng database sa pagitan ng Java at isang malawak na hanay ng mga database.

, pagiging isa sa mga pinakatanyag na wika ng programa, ay nagbibigay ng malawak na suporta sa mga database. Tinutulungan tayo nitong kumonekta sa iba't ibang mga database sa pamamagitan ng (Pagkakakonekta ng Java Database). Sa artikulong ito, sasabihin ko sa iyo kung paano kumonekta sa isang database at magpatupad ng mga query gamit ang JDBC.

Sa ibaba ang mga paksa ay sakop sa artikulong ito:





Panimula sa JDBC

Ang JDBC ay isa sa pamantayang Java API para sa koneksyon ng independiyenteng database sa pagitan ng at isang malawak na hanay ng mga database.Hinahayaan ka ng API na ito na i-encode ang mga pahayag sa kahilingan sa pag-access, sa Istrakturang Wika ng Query (SQL). Itopangunahin na nagsasangkot ng pagbubukas ng isang koneksyon, paglikha ng isang SQL Database, pagpapatupad ng mga query sa SQL at pagkatapos ay pagdating sa output.

Maaaring magamit ang JDBC API upang ma-access ang tabular data na nakaimbak sa anumang pamamagitang database. Sa pamamagitan nito, maaari mong i-update, i-save, kunin at tanggalin ang data mula sa mga database. Ito ay katulad ng Open Database Connectivity (ODBC) na ibinigay ng Microsoft.



Para sa isang mas mahusay na pag-unawa sa pagtatrabaho ng JDBC, sumisid tayo nang mas malalim sa paksa at maunawaan ang arkitektura na nasa likuran ng pagkakakonekta sa Java Database.

Mga Karaniwang Mga Bahagi ng JDBC

Nagbibigay ang JDBC API ng mga sumusunod na interface at klase at minus

tutorial ng developer ng salesforce para sa mga nagsisimula
  • DriverManager: Pangunahin itong ginagamit upang pamahalaan ang isang listahan ng mga driver ng database. Ang driver na kumikilala sa isang tiyak na sub-protocol ay gagamitin upang magtatag ng isang Koneksyon sa database.



  • Ang Driver ay isang interface na humahawak ng mga komunikasyon sa database server. Inaalis din nito ang mga detalyena nauugnay habang nagtatrabaho sa mga bagay ng Driver.

  • Isang Koneksyon ay isang interface na binubuo ng lahat ng mga pamamaraan na kinakailangan upang kumonekta sa isang database. Ang object ng koneksyon ay nakikipag-usap sa mga pagpapaandar ng komunikasyon ng database. konteksto

Ngayon, magpatuloy tayo sa susunod na paksa at tingnan ang mga hakbang na kinakailangan upang lumikha ng isang JDBC Application.

Mga hakbang upang lumikha ng Application ng JDBC

Upang makalikha ng isang JDBC Application, kailangan mong sundin ang ilang mga hakbang. Tingnan natin kung ano sila.

Mga hakbang upang lumikha ng JDBC Application - Advanced Java tutorial - Edureka

  1. I-import ang mga pakete: Kailangan mong isama ang lahat ng mga pakete na naglalaman ng mga klase sa JDBC na kinakailangan para sa programa sa database . Kadalasan, ginagamit i-import ang java.sql. * magkasiya.

  2. Irehistro ang driver ng JDBC: Dito kailangan mong simulan ang isang driver upang maaari mong buksan ang isang channel ng komunikasyon sa database.

  3. Magbukas ng isang koneksyon: Dito, maaari mong gamitin ang getConnection () pamamaraan upang lumikha ng isang bagay na Koneksyon, na kumakatawan sa isang pisikal na koneksyon sa database.

    kung paano gumawa ng isang malalim na kopya sa java
  4. Ipatupad ang isang query: Talagang nangangailangan ito upang gumamit ng isang bagay na uri ng Pahayag para sa pagbuo at pagsusumite ng isang pahayag ng SQL sa database.

  5. I-extract ang data mula sa hanay ng resulta: Iminumungkahi na gamitin mo ang naaangkop getXXX () pamamaraan upang makuha ang data mula sa itinakdang resulta.

  6. Linisin ang kapaligiran: Dito, mahalaga ito satahasang isara ang lahat ng mapagkukunan ng database kumpara sa pag-asa sa koleksyon ng basura ng JVM.

Ngayon dahil nakita mo ang iba't ibang mga hakbang na kasangkot upang lumikha ng isang JDBC Application, tingnan natin ang isang halimbawa ng code upang lumikha ng isang database at magtaguyod ng isang koneksyon.

package Edureka import java.sql. * import java.sql.DriverManager pampublikong klase Halimbawa {// JDBC driver name and database URL static final String JDBC_DRIVER = 'com.mysql.jdbc.Driver' static final String DB_URL = 'jdbc: MySQL: // localhost / emp '// Mga kredensyal ng database static final String USER =' root 'static final String PASS =' 'public static void main (String [] args) {Connection conn = null Statement stmt = null try {// STEP 2 : Pagrehistro sa JDBC driver Class.forName ('com.mysql.cj.jdbc.Driver') // HAKBANG 3: Buksan ang isang koneksyon System.out.println ('Kumokonekta sa database ...') conn = DriverManager.getConnection (DB_URL , 'root', '') // STEP 4: Pagpapatupad ng isang query System.out.println ('Lumilikha ng pahayag ...') stmt = conn.createStatement () String sql sql = 'SELECT id, una, huling, edad MULA SA ResultaSet ng mga empleyado rs = stmt.executQuery (sql) // HAKBANG 5: Mag-extract ng data mula sa itinakdang resulta habang (rs.next ()) {// Kunin ayon sa pangalan ng haligi int id = rs.getInt ('id') sa edad = rs.getInt ('edad') String muna = rs.getString ('una') String huling = rs.getString ('huling') // Mga halaga ng display System.out.print ('ID:' + id) System.out.print (', Edad:' + edad) System.out.print (', Una : '+ una) System.out.println (', Huling: '+ huling)} // HAKBANG 6: Linisin ang kapaligiran rs.close () stmt.close () conn.close ()} mahuli (SQLException se) {// Mga error sa hawakan para sa JDBC se.printStackTrace ()} catch (Exception e) {// Mga error sa paghawak para sa Class.forName e.printStackTrace ()} sa wakas {// sa wakas ay nag-block na ginamit upang isara ang mga mapagkukunang subukan {kung (stmt! = null) stmt.close ()} catch (SQLException se2) {} // walang magagawa subukan {if (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // tapusin sa wakas subukan} // end try System.out.println ('Paalam!')} // end main} // end Halimbawa

Sa itaas ng code ay lumilikha ng isang talahanayan sa iyong localhost database. Upang ipasok ang mga halaga sa nilikha na database, maaari kang mag-refer sa ibaba code. Isusulat ko lamang ang code para sa hakbang 4. Ang natitirang code ay nananatiling pareho sa itaas.

// STEP 4: Pagpapatupad ng isang query System.out.println ('Lumilikha ng talahanayan sa ibinigay na database ...') stmt = conn.createStatement () String sql = 'CREATE TABLE EMPLOYEES' + '(id INTEGER not NULL,' + 'unang VARCHAR (255),' + 'huling VARCHAR (255),' + 'age INTEGER,' + 'PRIMARY KEY (id))' stmt.executUpdate (sql) System.out.println ('Nilikha ang talahanayan sa ibinigay na database ... ') System.out.println (' Paglalagay ng mga tala sa talahanayan ... ') stmt = conn.createStatement () String sql =' INSERT SA VALUES ng mga empleyado (100, 'Kriss', 'Kurian', 18) 'stmt.executUpdate (sql) sql =' INSERT SA VALUES ng mga empleyado (101, 'Enrique', 'John', 25) 'stmt.executUpdate (sql) sql =' INSERT SA Mga empleyado (102, 'Taylor', 'Swift' , 30) 'stmt.executUpdate (sql) sql =' INSERT SA VALUES ng mga empleyado (103, 'Linkin', 'Park', 28) 'stmt.executUpdate (sql) System.out.println (' Naglagay ng mga tala sa talahanayan. .. ')

Kaya't kung paano mo maitatatag ang isang koneksyon sa database at ipasok ang mga halaga sa mga talahanayan. Lumipat tayo ngayon at unawain ang iba't ibang Mga Uri ng Driver ng JDBC

Mga Uri ng Driver ng JDBC

Ginamit ang mga driver ng JDBC upang ipatupad ang tinukoy na mga interface sa JDBC API, para sa pakikipag-ugnay sa database server.Mahalaga, a Driver ng JDBC Gumagawa ng tatlong bagay at ang mga ito ay ang mga sumusunod:
1. Nagtitiyak ng isang koneksyon sa isang mapagkukunan ng data.
2. Magpapadala ito ng mga query at pag-update ng mga pahayag sa mapagkukunan ng data.
3. Panghuli, pinoproseso nito ang mga resulta.

Halimbawa, tutulungan ka ng mga driver ng JDBC na magbukas ng isang koneksyon sa database upang makipag-ugnay dito sa pamamagitan ng pagpapadala . Kung nais mong malaman ang tungkol sa mga uri ng JDBC Driver, maaari kang mag-refer sa artikulong ito sa .

Lumipat tayo ngayon at unawain ang Mga Koneksyon sa JDBC.

Mga Koneksyon sa JDBC

  • Mag-import ng Mga Pakete ng JDBC: Idagdag pa angkat pahayag sa iyong upang mai-import ang mga kinakailangang klase sa iyong Java code.

    hindi nakakain vs papet vs chef
  • Magrehistro sa JDBC Driver: Sa t ang kanyang hakbang, upang mai-load ang ninanais na pagpapatupad ng driver sa memorya upang matupad nito ang mga kahilingan sa JDBC. Mayroong 2 diskarte upang magparehistro ng isang driver.

    • Ang pinakaangkop na diskarte upang magparehistro ng isang driver ay ang paggamit ng Java para sa Pangalan () pamamaraan upang mapalakas na mai-load ang memorya ng klase ng file , na awtomatikong nirerehistro ito. Ang pamamaraang ito ay angkop dahil pinapayagan kang gawin ang configure at portable ng pagpaparehistro ng driver. Tingnan ang code sa ibaba:

      subukan ang {Class.forName ('oracle.jdbc.driver.OracleDriver')} catch (ex ClassNotFoundException) System.out.println ('Error: hindi ma-load ang driver class!') System.exit (1)}
    • Ang pangalawang diskarte na maaari mong gamitin upang magparehistro ng isang driver ay ang paggamit ng static registerDriver () paraan

      subukan ang {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} catch (ClassNotFoundException hal) {System.out.println ('Error: hindi ma-load ang driver class!') System.exit (1 )}
  • Dapat mong gamitin ang registerDriver () paraan kung gumagamit ka ng isang hindi-JDK na sumusunod na JVM, tulad ng ibinigay ng Microsoft. Narito ang bawat form ay nangangailangan ng isang database URL .

  • Pagbuo ng Database URL: Ang Pagbuo ng URL ay kinakailangan upang lumikha ng isang maayos na naka-format na address na tumuturo sa database kung saan mo nais kumonekta. Kapag na-load mo na ang driver, maaari kang magtaguyod ng isang koneksyon gamit ang DriverManager.getConnection () paraan Ang mga pamamaraan ng DriverManager.getConnection () ay & minus

    • getConnection (String url)

    • getConnection (String url, Properties prop)

    • getConnection (String url, String user, String password)

  • Lumikha ng isang object ng koneksyon

Maaari kang lumikha ng isang koneksyon gamit ang database URL, username, at password at gumagamit din ng mga object object.

  • Isara

Panghuli, upang wakasan ang sesyon ng database, kailangan mong isara ang lahat ng mga koneksyon sa database. Gayunpaman, kung nakalimutan mo, isasara ng kolektor ng basura ng Java ang koneksyon kapag nililinis nito ang mga lipas na bagay.

conn.close () // Ginamit upang isara ang koneksyon

Iyon lang ang tungkol sa pagkakakonekta sa Java Database. Kung nais mong malaman ang tungkol sa JDBC, maaari kang mag-refer sa artikulong ito sa . Dinadala tayo nito sa dulo ng artikulo tungkol sa 'kung paano kumonekta sa isang database'. Inaasahan kong naglagay ako ng kaunting ilaw sa iyong kaalaman sa JDBC.

Suriin ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Narito kami upang matulungan ka sa bawat hakbang sa iyong paglalakbay, para sa pagiging isang bukod sa mga katanungang ito sa panayam sa java, nakakakuha kami ng isang kurikulum na idinisenyo para sa mga mag-aaral at propesyonal na nais na maging isang Java Developer.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento ng artikulong 'kung paano kumonekta sa isang database' at babalikan ka namin sa lalong madaling panahon.