java jdbc tutorial what is jdbc
Počnúc základmi, tento výukový program JDBC vysvetľuje komponenty, architektúru a typy ovládačov v prostredí Java Database Connectivity (JDBC):
V tomto výučbe sa dozviete, čo je JDBC, jeho doteraz vydané verzie, aké sú predpoklady potrebné pred pokračovaním v JDBC, typy ovládačov atď. Na konci tohto tutoriálu budete ovládať základy Java Database Connectivity alebo JDBC a kde môžeme to použiť?
Začnime tento tutoriál základmi JDBC.
Čo sa dozviete:
Zoznam výukových programov Java JDBC
Výukový program č. 1: Čo je JDBC (pripojenie k databáze Java) (Tento návod)
Výukový program č. 2: Výukový program pre pripojenie Java JDBC s príkladom programovania
Výukový program č. 3: JDBC DriverManager, JDBC PreparedStatement And Statement
Výukový program č. 4: JDBC ResultSet: Ako používať Java ResultSet na načítanie údajov
Výukový program č. 5: Správa transakcií Java JDBC s príkladom
Výukový program č. 6: Spracovanie výnimiek JDBC - Ako zaobchádzať s výnimkami SQL
Výukový program č. 7: Výukový program pre dávkové spracovanie JDBC a uloženú procedúru
Výukový program č. 8: Najvyšších 25+ otázok a odpovedí na pohovory s JDBC
Čo je JDBC
Vo väčšine aplikácií Java je vždy potrebné interagovať s databázami, aby sa dali dáta načítať, manipulovať s nimi a spracovať ich. Z tohto dôvodu bola zavedená Java JDBC.
JDBC je bežne používaný krátky formulár pre pripojenie databázy Java. Pomocou JDBC môžeme interagovať s rôznymi typmi relačných databáz, ako sú Oracle, MySQL, MS Access atď.
Pred JDBC bolo zavedené rozhranie ODBC API na pripojenie a vykonávanie operácií s databázou. ODBC používa ovládač ODBC, ktorý je závislý od platformy, pretože bol napísaný v programovacom jazyku C. Rozhranie JDBC API je napísané v jazyku Java, je nezávislé na platforme a samotnú platformu Java robí samostatnou.
Nasledujúci diagram zobrazuje základný tok JDBC:
Verzie JDBC
Spoločnosť Sun Microsystems pôvodne vydala JDBC v JDK 1.1 19. februára 1997. Potom bola súčasťou platformy Java.
Nasledujúca tabuľka obsahuje verzie a implementácie JDBC:
Verzia JDBC | Implementácia JDK | Rok |
---|---|---|
JDBC 4.3 | Java SE 9 | 2017 |
JDBC 1.2 | JDK 1.1 | 1997 |
JDBC 2.1 | JDK 1.2 | 1999 |
JDBC 3.0 | JDK 1.4 | 2001 |
JDBC 4.0 | Java SE 6 | 2006 |
JDBC 4.1 | Java SE 7 | 2011 |
JDBC 4.2 | Java SE 8 | 2014 |
Predpoklad
Predtým, ako začnete s výučbou JDBC, musíte mať dobré znalosti o jazyku Java, aby ste mohli JDBC používať v programoch Java.
=> Odporúčané čítanie: Výukové programy Java
Nevyhnutné predpoklady na implementáciu JDBC do aplikácií Java sú:
1. Java by mala byť nainštalovaná v systéme, kde chcete vytvoriť aplikáciu Java a používať JDBC.
Pozri toto odkaz pre inštaláciu Java.
dva. Na pripojenie k systému DBMS by ste mali mať správne súbory JDBC ovládača. Každá databáza má odlišné súbory JDBC ovládača.
Tieto súbory si môžete stiahnuť pre konkrétnu databázu pomocou odkazov v nasledujúcej tabuľke:
Databáza s odkazom na stiahnutie | Názov poskytovateľa ovládača JDBC | Názov súboru JAR |
---|---|---|
MySQL | Oracle Corporation | MySQLmysql-konektor-java-VERSION.jar |
Oracle | Oracle Corporation | Oracleojdbc8.jar |
SQL Server | Microsoft Corporation | SQL Serversqljdbc41.jar, sqljdbc42.jar |
Postgre SQL | Globálna rozvojová skupina PostgreSQL | Postgre SQLpostgresql-VERSION.jar |
SQLite | Xerial.org | sqlite-jdbc-VERSION.jar |
MS Access | UCanAccess.com | MS Accessucanaccess-VERSION.jar |
Typy ovládačov v JDBC
Teraz si predstavíme typy ovládačov v JDBC, ktoré vám pomôžu vybrať ten vhodný pre váš program.
Všetky systémy RDMS (Relational Database Management System) potrebujú ovládač, ak majú byť sprístupnené zvonka ich systému. Ovládač JDBC je vyžadovaný na vykonávanie dotazov SQL a získanie výsledku z databázy.
V JDBC sú k dispozícii 4 rôzne typy ovládačov. Klasifikujú sa na základe techniky, ktorá sa používa na prístup do databázy.
Sú to tieto:
- Typ I: Most JDBC-ODBC
- Typ II: Natívny APT - čiastočne ovládač Java
- Typ III: Sieťový protokol - plne Java Driver
- Typ IV: Tenký ovládač - Plne Java ovládač
Typ I: Most JDBC-ODBC
V tomto type ovládača funguje JDBC - ODBC Bridge ako rozhranie medzi klientom a serverom DB. Keď používateľ použije aplikáciu Java na odosielanie požiadaviek do databázy pomocou mosta JDBC - ODBC Bridge, najskôr prevedie rozhranie JDBC API na rozhranie ODBC API a potom ho odošle do databázy. Keď sa výsledok prijme z databázy DB, odošle sa do rozhrania ODBC API a potom do rozhrania JDBC API.
Tento ovládač je závislý na platforme, pretože používa ODBC, ktoré závisí od natívnej knižnice operačného systému. V tomto type by mal byť v každom klientskom systéme nainštalovaný ovládač JDBC - ODBC a databáza musí podporovať ovládač ODBC.
Ak nejde o inštaláciu na klientskom počítači, môžeme použiť tento ovládač. Ľahko sa používa, ale poskytuje nízky výkon v dôsledku prevodu volaní metódy JDBC na volania metódy ODBC.
Poznámka: Je k dispozícii v JDK 1.2
Java 8 nepodporuje tento typ ovládača. Spoločnosť Oracle odporúča, aby používateľ používal ovládače JDBC poskytované ich dodávateľmi databáz.
Obrázok: Typ I: JDBC - Ovládač mosta ODBC
Typ II: Natívne API - čiastočne ovládač Java
Je to podobné ako s ovládačom typu I. Tu je časť ODBC nahradená natívnym kódom v ovládači typu II. Táto časť natívneho kódu je zameraná na konkrétny databázový produkt. Používa knižnice na strane klienta databázy. Tento ovládač prevádza volania metódy JDBC na natívne volania natívneho rozhrania API databázy.
Keď databáza dostane požiadavky od používateľa, požiadavky sa spracujú a odošlú späť s výsledkami v natívnom formáte, ktoré sa majú previesť do formátu JDBC a odovzdať ich aplikácii Java.
To bolo okamžite prijaté predajcami DB, pretože ich implementácia bola rýchla a lacná. Nachádza sa tiež v natívnom formáte databázy DB.
Tento typ ovládača poskytuje rýchlejšiu odozvu a výkon ako vodič typu I.
Obrázok: Typ II: Natívny APT - čiastočne ovládač Java
Typ III: Sieťový protokol
Ovládač typu III je úplne napísaný v jazyku Java. Je to ako trojstupňový prístup k databáze. Posiela volania metód JDBC na sprostredkujúci server. V mene JDBC sprostredkujúci server komunikuje s databázou. Aplikačný server (stredná alebo stredná úroveň) prevádza hovory JDBC buď priamo, alebo nepriamo na databázový protokol špecifický pre dodávateľa.
Tento prístup nezvyšuje efektivitu architektúry a je tiež nákladný, pretože väčšina dodávateľov databáz tento ovládač nepreferuje. Pretože sa používa aplikačný server, musíte mať dobré znalosti o aplikačnom serveri, aby ste mohli efektívne využívať tento prístup.
Obrázok: Typ III: Sieťový protokol - plne ovládač Java
Typ IV: Tenký ovládač
Ovládač typu IV je implementovaný priamo a prevádza hovory JDBC priamo do databázového protokolu špecifického pre dodávateľa. Dnes je väčšina ovládačov JDBC ovládačmi typu IV. Je napísaný úplne v jazyku Java a je teda nezávislý na platforme. Je nainštalovaný vo vnútri JVM (Java Virtual Machine) klienta, takže nemusíte inštalovať žiadny softvér na strane klienta alebo servera. Táto architektúra ovládača má všetku logiku na priamu komunikáciu s databázou DB v jednom ovládači.
Poskytuje lepší výkon ako iný typ ovládačov. Umožňuje ľahké nasadenie. V súčasnosti tento typ ovládača vyvíja samotný predajca databázy, aby ho programátori mohli používať priamo bez závislosti na iných zdrojoch.
Obrázok: Typ IV: Tenký ovládač - Plne Java ovládač
Aplikácie JDBC
JDBC sa dá použiť v Java aplikáciách, appletoch, servletech alebo iných programoch Java, kde sa chcete spojiť s databázou DB.
Napríklad, Samostatné aplikácie, webové stránky, bankové aplikácie atď.,
Architektúra a komponenty JDBC
Architektúra JDBC: Podporuje dva typy modelov spracovania pre prístup do databázy.
Sú to:
- Dvojstupňová architektúra
- Trojvrstvová architektúra
# 1) Dvojvrstvová architektúra:
Pomáha aplikácii Java priamo sa spojiť s databázou. Na komunikáciu s konkrétnou databázou potrebuje ovládač JDBC. Užívateľ odošle požiadavky do DB a prijme odpoveď priamo bez sprostredkovateľa okrem JDBC Driver. Databáza, buď v rovnakom stroji, alebo na vzdialenom stroji, je pripojená prostredníctvom siete. Dá sa to nazvať ako architektúra klient-server.
# 2) Trojvrstvová architektúra:
Je to opak dvojvrstvovej architektúry. Medzi používateľom a databázou neexistuje priama komunikácia. Používateľ odošle požiadavku na strednú vrstvu (aplikačný server), z ktorej sa žiadosť znova odošle do databázy. Potom databáza spracuje požiadavku a odošle výsledok na strednú vrstvu, z ktorej používateľ dostane výsledok / odpoveď.
Zjednodušuje nasadenie a správu. Riaditelia Management Information System (MIS) používajú túto architektúru, pretože uľahčujú údržbu kontroly prístupu a aktualizácie podnikových údajov.
Trojvrstvová architektúra
Komponenty JDBC
V JDBC sú k dispozícii 4 hlavné komponenty. Oni sú:
- JDBC API
- Správca ovládačov JDBC
- JDBC Test Suite
- JDBC - most ODBC
# 1) JDBC API: Poskytuje prístup k relačným databázam z ľubovoľného programu Java. Rozhranie JDBC API má množinu tried a rozhraní, ktoré sú napísané v prostredí Java a poskytujú vývojárom štandardný nástroj / rozhranie API. Pomocou rozhrania JDBC API môžete vytvárať a spúšťať dotazy SQL, prijímať výsledky a vykonávať zmeny údajov a výsledky ukladať späť do databázy.
Môže interagovať s viacerými databázami ako Oracle, MySQL, MS Access z jedného programu Java. S JDBC API nie je potrebné písať jeden program pre prístup k Oracle DB, iný program pre prístup k MySQL, iný program pre prístup k MS Access a tak ďalej.
JDBC API je súčasťou platformy Java, ktorá má Java Standard Edition (Java SE) aj Java Enterprise Edition (Java EE).
Rozhranie JDBC 4.0 API má 2 balíčky.
- Java.sql
- Javax.sql
Oba balíčky sú k dispozícii v prostredí Java SE a Java EE.
# 2) Správca ovládačov JDBC: Tradičnou riadiacou vrstvou JDBC je Driver Manager, ktorá slúži ako rozhranie medzi používateľom a ovládačmi. Udržuje podrobnosti o sledovaní ovládačov, ktoré sú k dispozícii, a vytvorí spojenie medzi databázou a príslušným ovládačom. Definuje objekty, ktoré môžu pripojiť aplikáciu Java k ovládaču JDBC. Ide teda o chrbticu rozhrania JDBC API.
O Správcovi ovládačov sa budeme rozprávať v ďalšom návode.
# 3) Testovacia sada JDBC: Pomáha zistiť, či ovládače JDBC spustia program alebo nie. Poskytuje istotu a zhodu, že program bude spustený ovládačmi JDBC.
# 4) JDBC- ODBC Bridge: Toto využíva ovládače ODBC ako ovládače JDBC. Je to podobné ako ovládač typu I, ktorý je už zahrnutý v časti o typoch ovládačov v tomto výučbe.
Kľúčové body, ktoré je potrebné poznamenať:
- JDBC sa používa na interakciu s databázou z ľubovoľného programu Java, ako sú napríklad Java aplikácie, applety, servlety.
- Posledná verzia JDBC je JDBC 4.3. Ide o stabilné vydanie od 21. storočiasvSeptember 2017.
- Vodič typu I: Most JDBC ODBC - ľahko použiteľný, ale ODBC závisí od platformy. Je to tiež vodič s nízkym výkonom.
- Vodič typu II: Natívne API - Natívna časť kódu nahradila časť ODBC v ovládači typu I a bola zameraná na konkrétny databázový produkt. Je rýchlejší ako ovládač typu I.
- Vodič typu III: Middle Tier alebo aplikačný server sa používa ako rozhranie medzi JDBC Driver a databázou. Znalosti o aplikačnom serveri sú potrebné na jeho efektívne využitie.
- Vodič typu IV: Ovládač JDBC okamžite komunikuje s databázou. Predajcovia databáz používajú tento typ ovládačov a poskytujú ich zákazníkom alebo vývojárom.
- JDBC je možné použiť v ľubovoľnom programe napísanom v jazyku Java.
Záver
V tomto výučbe JDBC sme sa dozvedeli o základoch JDBC a potrebných predpokladoch pred pokračovaním v JDBC. Videli sme jeho verzie a 4 typy ovládačov, ktoré vývojárom pomáhajú rozhodnúť sa, aký typ ovládača majú v programoch používať.
Diskutovali sme tiež o architektúre JDBC a jej 4 základných komponentoch.
Odporúčané čítanie
- JDBC DriverManager, JDBC PreparedStatement And Statement
- Výukový program pre selén ChromeDriver: Testy selenového webdriveru v prehliadači Chrome
- Výukový program Java SWING: Kontajnery, komponenty a spracovanie udalostí
- Výukový program JAVA pre začiatočníkov: viac ako 100 praktických výučbových programov Java Video
- Rámec riadený dátami v selenovom WebDriveri pomocou POI Apache
- Zaobchádzanie s prvkami iFrames pomocou metódy switchTo () selénu WebDriver
- Testovanie prístupnosti pomocou selénového webdriveru s príkladom kódu
- Ako spustiť selenový webový ovládač v rôznych populárnych prehliadačoch