java jdbc tutorial what is jdbc
Počínaje základy, tento výukový program JDBC vysvětluje komponenty, architekturu a typy ovladačů v prostředí Java Database Connectivity (JDBC):
Tento tutoriál vysvětluje, co je JDBC, jeho dosud vydané verze, jaké jsou předpoklady potřebné před pokračováním v JDBC, typy ovladačů atd. Na konci tohoto tutoriálu budete znát základy Java Database Connectivity nebo JDBC a kde můžeme to použít?
Začněme tento tutoriál základem JDBC.
Co se naučíte:
Seznam výukových programů Java JDBC
Výukový program č. 1: Co je JDBC (Java Database Connectivity) (Tento návod)
Výukový program č. 2: Výukový program pro připojení Java JDBC s příkladem programování
Výukový program č. 3: JDBC DriverManager, JDBC PreparedStatement And Statement
Výukový program č. 4: JDBC ResultSet: Jak používat sadu Java ResultSet k načtení dat
Výukový program č. 5: Správa transakcí Java JDBC s příkladem
Výukový program č. 6: Zpracování výjimek JDBC - Jak zacházet s výjimkami SQL
Výukový program č. 7: Výukový program dávkového zpracování JDBC a uložených procedur
Výukový program č. 8: Nejlepší 25+ otázek a odpovědí na rozhovor s JDBC
Co je JDBC
Ve většině aplikací Java vždy existuje potřeba interakce s databázemi za účelem načtení, manipulace a zpracování dat. Za tímto účelem byla zavedena Java JDBC.
JDBC je běžně používaný krátký formulář pro připojení databáze Java. Pomocí JDBC můžeme komunikovat s různými typy relačních databází, jako jsou Oracle, MySQL, MS Access atd.
Před JDBC bylo zavedeno rozhraní ODBC API pro připojení a provádění operací s databází. ODBC používá ovladač ODBC, který je závislý na platformě, protože byl napsán v programovacím jazyce C. Rozhraní JDBC API je napsáno v jazyce Java, je nezávislé na platformě a samo o sobě je nezávislé na platformě Java.
Níže uvedený diagram ukazuje základní tok JDBC:
Verze JDBC
Zpočátku společnost Sun Microsystems vydala JDBC v JDK 1.1 19. února 1997. Poté byla součástí platformy Java.
Následující tabulka obsahuje verze a implementace JDBC:
Verze JDBC | Implementace 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 |
Předpoklad
Než budete pokračovat v kurzu JDBC, musíte mít dobré znalosti o Javě, abyste mohli JDBC používat v programech Java.
=> Doporučené čtení: Výukové programy Java
Předpoklady pro implementaci JDBC v aplikacích Java jsou následující:
1. Java by měla být nainstalována v systému, kde chcete vytvořit aplikaci Java a používat JDBC.
Viz toto odkaz pro instalaci Java.
dva. Pro připojení k DBMS byste měli mít správné soubory jar ovladače JDBC. Každá databáze má různé soubory jar JDBC ovladače.
Tyto soubory můžete stáhnout pro konkrétní databázi pomocí odkazů v následující tabulce:
Databáze s odkazem ke stažení | Název poskytovatele ovladače JDBC | Název souboru JAR |
---|---|---|
MySQL | Oracle Corporation | MySQLmysql-konektor-java-VERSION.jar |
Věštec | Oracle Corporation | Věštecojdbc8.jar |
SQL Server | společnost Microsoft | SQL Serversqljdbc41.jar, sqljdbc42.jar |
Postgre SQL | Globální rozvojová skupina PostgreSQL | Postgre SQLpostgresql-VERSION.jar |
SQLite | Xerial.org | sqlite-jdbc-VERSION.jar |
MS Access | UCanAccess.com | MS Accessucanaccess-VERSION.jar |
Typy ovladačů v JDBC
Nyní pojďme diskutovat o typech ovladačů v JDBC, abychom vám pomohli vybrat ten, který je vhodný pro váš program.
Všechny systémy RDMS (Relational Database Management System) potřebují ovladač, pokud k nim má být přistupováno zvenčí jejich systému. Ovladač JDBC je tedy vyžadován k provádění dotazů SQL a získání výsledku z databáze.
V JDBC jsou k dispozici 4 různé typy ovladačů. Jsou klasifikovány na základě techniky, která se používá pro přístup k databázi.
Jsou to následující:
- Typ I: JDBC-ODBC Bridge
- Typ II: Nativní APT - částečně ovladač Java
- Typ III: Síťový protokol - plně ovladač Java
- Typ IV: Tenký ovladač - Plně Java ovladač
Typ I: JDBC-ODBC Bridge
V tomto typu ovladače funguje rozhraní JDBC - ODBC Bridge jako rozhraní mezi klientem a serverem DB. Když uživatel používá aplikaci Java k odesílání požadavků do databáze pomocí JDBC - ODBC Bridge, nejprve převede rozhraní JDBC API na rozhraní ODBC API a poté jej odešle do databáze. Když je výsledek přijat z DB, je odeslán do rozhraní ODBC API a poté do rozhraní JDBC API.
Tento ovladač je závislý na platformě, protože používá ODBC, který závisí na nativní knihovně operačního systému. V tomto typu by měl být ovladač JDBC - ODBC nainstalován v každém klientském systému a databáze musí podporovat ovladač ODBC.
Pokud nejde o instalaci v klientském počítači, můžeme použít tento ovladač. Je snadno použitelný, ale poskytuje nízký výkon kvůli převodu volání metody JDBC na volání metody ODBC.
Poznámka: Je k dispozici v JDK 1.2
Java 8 nepodporuje tento typ ovladače. Společnost Oracle doporučuje, aby uživatel využil ovladače JDBC poskytované jejich dodavateli databází.
Obrázek: Typ I: JDBC - Ovladač mostu ODBC
Typ II: Nativní API - částečně ovladač Java
Je to podobné jako u ovladače typu I. Zde je část ODBC nahrazena nativním kódem v ovladači typu II. Tato část nativního kódu je zaměřena na konkrétní databázový produkt. Využívá knihovny na straně klienta databáze. Tento ovladač převádí volání metody JDBC na nativní volání nativního rozhraní API databáze.
Když databáze obdrží požadavky od uživatele, požadavky jsou zpracovány a odeslány zpět s výsledky v nativním formátu, které mají být převedeny do formátu JDBC a předány aplikaci Java.
To bylo okamžitě přijato prodejci DB, protože jeho implementace byla rychlá a levná. Je také v nativním formátu databáze.
Tento typ ovladače poskytuje rychlejší odezvu a výkon než ovladač typu I.
Obrázek: Typ II: Nativní APT - částečně ovladač Java
Typ III: Síťový protokol
Ovladač typu III je plně napsán v jazyce Java. Je to jako tříúrovňový přístup k přístupu do databáze. Odesílá volání metody JDBC na zprostředkující server. Zprostředkující server jménem JDBC komunikuje s databází. Aplikační server (střední nebo střední vrstva) převádí volání JDBC buď přímo, nebo nepřímo na databázový protokol specifický pro dodavatele.
Tento přístup nezvyšuje efektivitu architektury a je také nákladný, protože většina prodejců databáze tento ovladač neupřednostňuje. Protože se používá aplikační server, musíte mít dobré znalosti o aplikačním serveru, abyste mohli tento přístup efektivně využívat.
Obrázek: Typ III: Síťový protokol - plně ovladač Java
Typ IV: Tenký ovladač
Ovladač typu IV je přímo implementován, který převádí volání JDBC přímo do databázového protokolu specifického pro dodavatele. Dnes je většina ovladačů JDBC typu IV. Je napsán plně v Javě a je tedy nezávislý na platformě. Je nainstalován uvnitř JVM (Java Virtual Machine) klienta, takže nemusíte instalovat žádný software na straně klienta nebo serveru. Tato architektura ovladače má veškerou logiku pro přímou komunikaci s DB v jediném ovladači.
Poskytuje lepší výkon než ostatní typy ovladačů. Umožňuje snadné nasazení. V dnešní době tento typ ovladače vyvíjí samotný prodejce databáze, aby jej programátoři mohli používat přímo bez závislosti na jiných zdrojích.
Obrázek: Typ IV: Tenký ovladač - plně Java Driver
Aplikace JDBC
JDBC lze použít v aplikacích Java, appletech, servletech nebo jakýchkoli jiných programech Java, kde se chcete připojit k DB.
Například, Samostatné aplikace, webové stránky, bankovní aplikace atd.,
Architektura a komponenty JDBC
Architektura JDBC: Podporuje dva typy modelů zpracování pro přístup k databázi.
Tyto jsou:
- Dvoustupňová architektura
- Třívrstvá architektura
# 1) Dvouvrstvá architektura:
Pomáhá aplikaci Java přímo se připojit k databázi. Pro komunikaci s konkrétní databází potřebuje ovladač JDBC. Uživatel odešle požadavky do DB a obdrží odpověď přímo bez prostředníka kromě ovladače JDBC. Databáze, ať už ve stejném počítači nebo na vzdáleném počítači, je připojena přes síť. Lze jej nazvat jako architektura klient-server.
# 2) Třívrstvá architektura:
Je to opak dvouvrstvé architektury. Mezi uživatelem a databází neexistuje žádná přímá komunikace. Uživatel odešle požadavek na střední vrstvu (aplikační server), ze kterého je požadavek znovu odeslán do databáze. Poté databáze zpracuje požadavek a odešle výsledek na střední úroveň, ze které uživatel obdrží výsledek / odpověď.
Zjednodušuje nasazení a správu. Ředitelé Management Information System (MIS) používají tuto architekturu, protože usnadňují správu přístupu a aktualizace podnikových dat.
Třívrstvá architektura
Součásti JDBC
V JDBC jsou k dispozici 4 hlavní komponenty. Oni jsou:
- JDBC API
- Správce ovladačů JDBC
- JDBC Test Suite
- JDBC - ODBC Bridge
# 1) JDBC API: Poskytuje přístup k relačním databázím z libovolného programu Java. Rozhraní JDBC API má sadu tříd a rozhraní, která jsou napsána v Javě a která poskytuje standardní nástroj / rozhraní API pro vývojáře. Pomocí rozhraní JDBC API můžete vytvářet a spouštět dotazy SQL, přijímat výsledky a provádět změny dat a ukládat výsledky zpět do databáze.
Může komunikovat s více databázemi, jako je Oracle, MySQL, MS Access, z jediného programu Java. S JDBC API není nutné psát jeden program pro přístup k Oracle DB, jiný program pro přístup k MySQL, jiný program pro přístup k MS Access atd.
JDBC API je součástí platformy Java, která má jak Java Standard Edition (Java SE), tak Java Enterprise Edition (Java EE).
Rozhraní JDBC 4.0 API má 2 balíčky.
- Java.sql
- Javax.sql
Oba balíčky jsou k dispozici v prostředí Java SE a Java EE.
# 2) Správce ovladačů JDBC: Tradiční vrstvou pro správu JDBC je Driver Manager a funguje jako rozhraní mezi uživatelem a ovladači. Zachovává sledovací podrobnosti ovladačů, které jsou k dispozici, a navazuje spojení mezi databází a příslušným ovladačem. Definuje objekty, které mohou připojit aplikaci Java k ovladači JDBC. Jedná se tedy o páteř API JDBC.
V dalším kurzu probereme Správce ovladačů.
# 3) JDBC Test Suite: Pomáhá zjistit, zda ovladače JDBC program spustí nebo ne. Poskytuje důvěru a shodu, že program bude spuštěn ovladači JDBC.
# 4) JDBC- ODBC Bridge: Toto využívá ovladače ODBC jako ovladače JDBC. Je to podobné ovladači typu I, který je již popsán v sekci typů ovladačů v tomto kurzu.
Klíčové body, které je třeba poznamenat:
- JDBC se používá k interakci s databází z libovolného programu Java, jako je Java aplikace, applety, servlety.
- Nejnovější verze JDBC je JDBC 4.3 Je stabilní vydání od 21SvatýZáří 2017.
- Řidič typu I: JDBC ODBC Bridge - snadno použitelný, ale ODBC je závislý na platformě. Je to také řidič s nízkým výkonem.
- Ovladač typu II: Nativní API - Nativní část kódu nahradila část ODBC v ovladači typu I a byla zaměřena na konkrétní databázový produkt. Je rychlejší než ovladač typu I.
- Řidič typu III: Middle Tier nebo aplikační server se používá jako rozhraní mezi ovladačem JDBC a databází. Znalost aplikačního serveru je nutná pro jeho efektivní využití.
- Řidič typu IV: Ovladač JDBC okamžitě komunikuje s databází. Prodejci databází používají tento typ ovladačů a poskytují je zákazníkům nebo vývojářům.
- JDBC lze použít v jakémkoli programu napsaném v jazyce Java.
Závěr
V tomto výukovém programu JDBC jsme se dozvěděli o základech JDBC a potřebných předpokladech před pokračováním v JDBC. Viděli jsme jeho verze a 4 typy ovladačů, které vývojářům pomáhají rozhodovat o typu ovladače, který se použije v programech.
Diskutovali jsme také o architektuře JDBC a jejích 4 základních komponentách.
Doporučené čtení
- JDBC DriverManager, JDBC PreparedStatement And Statement
- Výukový program ChromeDriver Selenium: Testy selenového webdriveru v prohlížeči Chrome
- Výukový program Java SWING: Kontejner, komponenty a zpracování událostí
- Výukový program JAVA pro začátečníky: 100+ praktických výukových programů Java Video
- Rámec řízený daty v selenu WebDriver pomocí POI Apache
- Manipulace s iFrames pomocí metody switchTo () selenu WebDriver
- Testování přístupnosti se selenovým webdriverem s příkladem kódu
- Jak spustit selen WebDriver v různých populárních prohlížečích