JDBC - Java Database Connectivity



S-a estimat că o mare parte din dezvoltarea de software implică operaţii client/server. Un mare avantaj al limbajului Java este acela de a permite realizarea de aplicaţii cu baze de date client - server independente de platfomă. Acest lucru este posibil folosind JDBC.


Java Database Conectivity este un API pentru limbajul Java care defineşte accesul clientului la baza de date. Oferă metode pentru interogarea şi modificarea bazei de date. JDBC este orientat spre baze de date relaţionale.
Platforma Java include JDBC API împreună cu o implementare ODBC pentru stabilirea conexiunii la baza de date. Acest driver este cod nativ nu Java.
Apelurile de metode trebuie să corespundă operaţiilor logice folosite pentru obţinerea informaţiei din baza de date: conectarea la baza de date, crearea unui statement, execuţia interogării şi vizualizarea rezultatelor.
Pentru a permite independenţa faţă de platfomă, JDBC oferă un driver manager care întreţine dinamic toate obiectele drivere de care are nevoie baza de date. De exemplu dacă există trei tipuri de vânzători de baze de date diferiţi la care trebuie să se conecteze, este nevoie de trei obiecte driver diferite . Obiectele driver se inregistreză la driver-ul managerul în momentul încărcării. Aceasta poate fi forţată folosind metoda Class.forName(). Clasele JDBC sunt incluse în pachetul Java java.sql . Pentru creearea unei conexiuni JDBC se foloseşte metoda DriverManager.getConnection().



JDBC permite implementări multiple pentru aceeaşi aplicaţie. API oferă un mecanism pentru încărcarea dinamică şi corectă a pachetelor java şi înregistrarea lor cu driver-ul manager JDBC . Acest driver este folosit pentru realizarea de conexiuni JDBC, crearea şi execuţia interogărilor. Interogările pot fi SQL INSERT, UPDATE şi DELETE sau pot fi fraze SELECT. De asemenea se pot apela proceduri stocate din program, folosind instrucţiunea CALL procedură. Există trei tipuri de instrucţiuni:
- Statement - instrucţiunea este trimisă bazei de date de fiecare dată.
- PreparedStatement- instrucţiunea este executată de mai multe ori într-o manieră eficientă.
- CallableStatement- pentru execuţia procedurilor stocate din cadrul bazeo de date
Instrucţiunile de modificare a bazei de date : INSERT, UPDATE şi DELETE returnează numarul înregistrărilor afectate de instrucţiune din baza de date. Aceste instrucţiuni nu returnează nici o alta informaţie.