java jdbc tutorial what is jdbc
Începând cu elementele de bază, acest tutorial JDBC explică componentele, arhitectura și tipurile de drivere din Java Database Connectivity (JDBC):
Acest tutorial explică ce este JDBC, versiunile sale lansate până acum, care sunt premisele necesare înainte de a continua cu JDBC, tipurile de drivere etc. La sfârșitul acestui tutorial, veți cunoaște elementele de bază ale Java Database Connectivity sau JDBC și unde o putem folosi.
Să începem acest tutorial cu elementele de bază ale JDBC.
Ce veți învăța:
Lista tutorialelor Java JDBC
Tutorial nr. 1: Ce este JDBC (Java Database Connectivity) (Acest tutorial)
Tutorial nr. 2: Tutorial de conexiune Java JDBC cu exemplu de programare
Tutorial nr. 3: JDBC DriverManager, JDBC PreparedStatement și declarație
Tutorial # 4: JDBC ResultSet: Cum se utilizează Java ResultSet pentru a prelua date
Tutorial # 5: Gestionarea tranzacțiilor Java JDBC cu exemplu
Tutorial nr. 6: JDBC Exception Handling - Cum să gestionați excepțiile SQL
Tutorial nr. 7: Tutorial JDBC privind procesarea lotului și procedura stocată
Tutorial # 8: Top 25+ Întrebări și răspunsuri la interviu JDBC
Ce este JDBC
În majoritatea aplicațiilor Java, este întotdeauna nevoie să interacționați cu bazele de date pentru a prelua, manipula și procesa datele. În acest scop, a fost introdus Java JDBC.
JDBC este formularul scurt utilizat în mod obișnuit pentru conectivitatea bazei de date Java. Prin utilizarea JDBC, putem interacționa cu diferite tipuri de baze de date relaționale, cum ar fi Oracle, MySQL, MS Access etc.
Înainte de JDBC, ODBC API a fost introdus pentru a se conecta și a efectua operațiuni cu baza de date. ODBC folosește un driver ODBC care depinde de platformă, deoarece a fost scris în limbaj de programare C. API-ul JDBC este scris în limbaj Java, este independent de platformă și independent de platformă Java.
Diagrama de mai jos prezintă fluxul de bază al JDBC:
Versiuni ale JDBC
Inițial, Sun Microsystems lansase JDBC în JDK 1.1 pe 19 februarie 1997. După aceea, a făcut parte din platforma Java.
Următorul tabel conține versiuni și implementări JDBC:
Versiunea JDBC | Implementarea JDK | An |
---|---|---|
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 |
Condiție prealabilă
Înainte de a continua cu tutorialul JDBC, trebuie să aveți cunoștințe bune despre Java, astfel încât să puteți utiliza JDBC în programele Java.
=> Citire recomandată: Tutoriale Java
Condițiile preliminare pentru implementarea JDBC în aplicațiile Java sunt următoarele:
1. Java ar trebui instalat în sistemul în care doriți să creați aplicația Java și să utilizați JDBC.
Consultați acest lucru legătură pentru instalarea Java.
2. Ar trebui să aveți fișiere jar de driver JDBC adecvate pentru a vă conecta la SGBD. Fiecare bază de date conține fișiere jar diferite ale driverului JDBC.
Puteți descărca aceste fișiere pentru baza de date specifică utilizând linkurile din tabelul următor:
Baza de date cu link de descărcare | Nume furnizor driver JDBC | Nume fișier JAR |
---|---|---|
MySQL | Oracle Corporation | MySQLmysql-connector-java-VERSION.jar |
Oracol | Oracle Corporation | Oracolojdbc8.jar |
SQL Server | Microsoft Corporation | SQL Serversqljdbc41.jar, sqljdbc42.jar |
Postgre SQL | Grupul de dezvoltare globală PostgreSQL | Postgre SQLpostgresql-VERSION.jar |
SQLite | Xerial.org | sqlite-jdbc-VERSION.jar |
MS Access | UCanAccess.com | MS Accessucanaccess-VERSION.jar |
Tipuri de drivere în JDBC
Acum, să discutăm despre tipurile de driver din JDBC pentru a vă ajuta să îl alegeți pe cel potrivit pentru programul dvs.
Toate RDMS (sistemul de gestionare a bazelor de date relaționale) au nevoie de un driver dacă urmează să fie accesate din afara sistemului lor. Deci, driverul JDBC este necesar pentru a executa interogări SQL și pentru a obține rezultatul din baza de date.
Există 4 tipuri diferite de drivere disponibile în JDBC. Acestea sunt clasificate pe baza tehnicii utilizate pentru a accesa o bază de date.
Acestea sunt după cum urmează:
- Tipul I: JDBC- ODBC Bridge
- Tipul II: APT nativ - parțial driver Java
- Tipul III: Protocol de rețea - Driver complet Java
- Tipul IV: Driver subțire - Driver complet Java
Tipul I: JDBC- ODBC Bridge
În acest tip de driver, JDBC - ODBC Bridge acționează ca o interfață între client și serverul DB. Când un utilizator folosește aplicația Java pentru a trimite cereri către baza de date utilizând JDBC - ODBC Bridge, acesta convertește mai întâi API-ul JDBC în API ODBC și apoi îl trimite la baza de date. Când rezultatul este primit de la DB, acesta este trimis către ODBC API și apoi către JDBC API.
Acest driver este dependent de platformă deoarece folosește ODBC care depinde de biblioteca nativă a sistemului de operare. În acest tip, driverul JDBC - ODBC trebuie instalat în fiecare sistem client și baza de date trebuie să accepte driverul ODBC.
Când nu contează instalarea în mașina client, putem folosi acest driver. Este ușor de utilizat, dar oferă performanțe reduse datorită conversiei apelurilor din metoda JDBC în apelurile din metoda ODBC.
Notă: Este disponibil în JDK 1.2
Java 8 nu acceptă acest tip de driver. Oracle recomandă ca utilizatorul să utilizeze driverele JDBC furnizate de furnizorii lor de baze de date.
Figura: Tip I: Driver JDBC - ODBC Bridge
Tipul II: API nativ - Parțial driver Java
Este similar cu driverul de tip I. Aici, partea ODBC este înlocuită cu codul nativ în driverul de tip II. Această parte de cod nativă este direcționată către un anumit produs din baza de date. Utilizează bibliotecile din partea clientului a bazei de date. Acest driver convertește apelurile metodei JDBC în apeluri native ale API-ului nativ al bazei de date.
Când baza de date primește cererile de la utilizator, cererile sunt procesate și trimise înapoi cu rezultatele în formatul nativ care urmează să fie convertite în format JDBC și să le dea aplicației Java.
A fost adoptat instant de către furnizorii de baze de date, deoarece a fost rapid și ieftin de implementat. Este, de asemenea, în formatul nativ al DB.
Acest tip de driver oferă un răspuns și o performanță mai rapidă decât driverul de tip I.
Figura: Tip II: APT nativ - Parțial driver Java
Tipul III: Protocol de rețea
Driverul de tip III este complet scris în Java. Este ca o abordare pe 3 niveluri pentru a accesa baza de date. Trimite apelurile metodei JDBC către un server intermediar. În numele JDBC, serverul intermediar comunică cu baza de date. Serverul de aplicații (intermediar sau mediu) convertește apelurile JDBC fie direct, fie indirect în protocolul bazei de date specific furnizorului.
Această abordare nu crește eficiența arhitecturii și este, de asemenea, costisitoare, datorită acestui fapt majoritatea furnizorilor de baze de date nu preferă acest driver. Deoarece este utilizat serverul de aplicații, trebuie să aveți cunoștințe bune despre serverul de aplicații pentru a utiliza această abordare în mod eficient.
Figura: Tipul III: Protocol de rețea - Driver complet Java
Tipul IV: Driver subțire
Driverul de tip IV este implementat direct, care convertește apelurile JDBC direct în protocolul bazei de date specific furnizorului. Astăzi, majoritatea driverelor JDBC sunt de tip IV. Este scris complet în Java și, prin urmare, este independent de platformă. Este instalat în interiorul JVM (Java Virtual Machine) al clientului, deci nu trebuie să instalați niciun software pe partea clientului sau a serverului. Această arhitectură a driverului are toată logica de a comunica direct cu DB într-un singur driver.
Oferă performanțe mai bune decât celelalte tipuri de drivere. Permite o desfășurare ușoară. În zilele noastre, acest tip de driver este dezvoltat chiar de furnizorul bazei de date, astfel încât programatorii să-l poată folosi direct fără dependență de alte surse.
Figura: Tip IV: Driver subțire - Driver complet Java
Aplicații ale JDBC
JDBC poate fi utilizat în aplicații Java, applets, servleturi sau orice alte programe Java unde doriți să vă conectați cu DB.
De exemplu, Aplicații independente, site-uri web, aplicații bancare etc.,
Arhitectură și componente ale JDBC
Arhitectura JDBC: Suportă două tipuri de modele de procesare pentru a accesa DB.
Acestea sunt:
- Arhitectură pe două niveluri
- Arhitectură pe trei niveluri
# 1) Arhitectură pe două niveluri:
Ajută aplicația Java să se conecteze direct cu baza de date. Are nevoie de un driver JDBC pentru comunicarea cu un anumit DB. Utilizatorul trimite solicitările către DB și primește răspunsul direct fără niciun mediator, cu excepția driverului JDBC. Baza de date, fie în aceeași mașină, fie pe o mașină la distanță, este conectată printr-o rețea. Poate fi numit ca o arhitectură client-server.
# 2) Arhitectură pe trei niveluri:
Este opusul arhitecturii pe două niveluri. Nu există o comunicare directă între utilizator și baza de date. Utilizatorul trimite cererea la nivelul mediu (Application Server) de la care cererea este trimisă din nou la baza de date. Apoi baza de date procesează cererea și trimite rezultatul la nivelul mediu de la care utilizatorul primește rezultatul / răspunsul.
Simplifică implementarea și gestionarea. Directorii sistemului informațional de gestionare (MIS) folosesc această arhitectură deoarece simplifică menținerea controlului accesului și a actualizărilor la datele corporative.
Arhitectură pe trei niveluri
Componentele JDBC
Există 4 componente principale disponibile în JDBC. Sunt:
- API JDBC
- Manager driver JDBC
- JDBC Test Suite
- JDBC - Podul ODBC
# 1) API JDBC: Oferă acces la baze de date relaționale din orice program Java. API-ul JDBC are un set de clase și interfețe scrise în Java care oferă un instrument / API standard pentru dezvoltatori. Folosind API-ul JDBC, puteți crea și executa interogări SQL, puteți primi rezultatul și puteți efectua modificări ale datelor și puteți salva rezultatele înapoi în baza de date.
Poate interacționa cu mai multe baze de date precum Oracle, MySQL, MS Access dintr-un singur program Java. Cu JDBC API, nu este necesar să scrieți un program pentru a accesa Oracle DB, un alt program pentru a accesa MySQL, un alt program pentru a accesa MS Access și așa mai departe.
API-ul JDBC este o parte a platformei Java care are atât Java Standard Edition (Java SE), cât și Java Enterprise Edition (Java EE).
API-ul JDBC 4.0 are 2 pachete.
- Java.sql
- Javax.sql
Ambele pachete sunt disponibile în Java SE și Java EE.
# 2) Manager de driver JDBC: Stratul de gestionare tradițional al JDBC este Driver Manager și acționează ca o interfață între utilizator și drivere. Păstrează detaliile de urmărire a driverelor disponibile și stabilesc o conexiune între baza de date și driverul corespunzător. Acesta definește obiectele care pot conecta aplicația Java la driverul JDBC. Astfel, este coloana vertebrală a API-ului JDBC.
Vom discuta despre Driver Manager în următorul tutorial.
# 3) JDBC Test Suite: Vă ajută să aflați dacă driverele JDBC vor rula programul sau nu. Oferă încrederea și conformitatea că programul va fi rulat de JDBC Drivers.
# 4) JDBC- ODBC Bridge: Aceasta folosește driverele ODBC ca Drivere JDBC. Este similar cu driverul TYPE I care este deja acoperit în secțiunea tipuri de driver din acest tutorial.
Puncte cheie care trebuie remarcate:
- JDBC este utilizat pentru a interacționa cu baza de date de la orice program Java, cum ar fi aplicația Java, Applets, Servlets.
- Cea mai recentă versiune a JDBC este JDBC 4.3. Este o versiune stabilă de la 21SfSeptembrie 2017.
- Driver de tip I: JDBC ODBC Bridge - ușor de utilizat, dar ODBC depinde de platformă. Este, de asemenea, un driver de performanță redusă.
- Driver de tip II: API nativ - partea de cod nativ a înlocuit partea ODBC în driverul de tip I și vizează un anumit produs de bază de date. Este mai rapid decât driverul de tip I.
- Șofer de tip III: Middle Tier sau Application Server este utilizat ca o interfață între driverul JDBC și baza de date. Cunoașterea serverului de aplicații este necesară pentru a-l utiliza eficient.
- Șofer de tip IV: Driverul JDBC comunică imediat cu baza de date. Furnizorii de baze de date utilizează acest tip de driver și îl furnizează clienților sau dezvoltatorilor.
- JDBC poate fi utilizat în orice program scris în limbaj Java.
Concluzie
În acest tutorial JDBC, am aflat despre elementele de bază ale JDBC și cerințele preliminare necesare înainte de a continua cu JDBC. Am văzut versiunile sale și 4 tipuri de drivere care îi ajută pe dezvoltatori să decidă tipul de drivere pe care să îl folosească în programe.
De asemenea, am discutat despre arhitectura JDBC și cele 4 componente principale ale acesteia.
Lectură recomandată
- JDBC DriverManager, JDBC PreparedStatement și declarație
- Tutorial ChromeDriver Selenium: Teste Selenium Webdriver pe Chrome
- Tutorial Java SWING: Container, componente și gestionarea evenimentelor
- Tutorial JAVA pentru începători: peste 100 de tutoriale video Java practice
- Cadru bazat pe date în Selenium WebDriver folosind Apache POI
- Manipularea iFramelor folosind metoda Selenium WebDriver switchTo ()
- Testarea accesibilității cu Selenium Webdriver cu exemplu de cod
- Cum se execută Selenium WebDriver în diferite browsere populare