Java dhe MySQL

Komponent kryesor i një aplikacioni në Java është lidhja dhe ndërveprimi me një bazë të dhënash. Një nga sistemet baze të dhënash është MySQL.
Në këtë artikull do përmend shkurtimisht komponentët e ndërveprimit Java dhe MySQL.

Programim

Komponenti JDBC API

JDBC është shkurtim i Java Database Connectivity.
JDBC API është një Java API që mund të aksesojë cdo të dhënë në format tabele, sidomos të dhënat e ruajtura në databazat relacionale. JDBC mundëson ndërtimin e aplikacioneve në Java, të cilat menaxhojnë këto tre veprime:

  • Lidhja me një databazë,
  • Dergimin e kërkesave (query)
  • Modifikimin e të dhënave në databazë.

Ndërfaqja e JDBC konsiston në dy shtresa:

  • JDBC API i cili suporton komunikimin mes aplikacionit në Java dhe menaxherit të JDBC.
  • JDBC Driver i cili realizon komunikimin mes menaxherit të JDBC dhe Driver-it të databazës.

JDBC API ofron një ndërfaqe standarte për ndërveprimin me cdo sistem të menaxhimit të databazës relacionale (RDBMS).

JDBC Driver: është një set klasash në Java që implementon ndërfaqet JDBC për të ndërvepruar me databazën. Thuajse cdo sistem databaze, si MySQL, Oracle, Microsoft SQL Server, ofrojnë driver të tyre për JDBC. Për shembull MySQL ofron driver JDBC i cili quhet ndryshe dhe MySQL Connection/J, dhe lejon cdo databazë në MySQL të ndërveprojë me JDBC API. JDBC Driver janë me kod në Java. Për të përdorë një driver të tillë ju duhet të përfshini kodin e Jar file në aplikacionin tuaj në Java.

Connection: është komponenti më i rëndësishëm i JDBC. Në aplikacionin në Java ju duhet të ngarkoni fillimisht një driver dhe më pas të ndërtoni një lidhje me databazën. Kjo gjë realizohet pikërisht nga një objekt Connection. Ju mund të krijoni më tepër se një Connection me një databazë, njëherësh.

Statement: është një objekt që do krijohet për të vendosur një Query, ose ndryshe një kërkesë për një veprim në databazë. Objekti Statement funksionon nëpërmjet një objekti Connection. JDBC mundëson disa tipe statements të cilat përdoren për arsye të ndryshme, si për shembull PreparedStatement, CallableStatement.

ResultSet: pasi është ekzekutuar Query, nga databaza marrim një objekt ResultSet. Ky objekt ofron një set veprimesh që trajtojnë rezultatin e kërkesës.

Implementimi

Të dhënat URL, USER dhe PASS deklarohen si konstante. Këto i caktoni sipas kredencaleve tuaja për MySQL.

static final String DB_URL = "jdbc:mysql://localhost/STUDENTS"; 
static final String USER = "user"; 
static final String PASS = "secretpass";

 

Deklarojmë objektet për Connection dhe Statement.

Connection conn = null; 
Statement stmt = null;

 

Në vijim inicializojmë Driver, objektin conn per Connection dhe objektin stmt për Statement.

Class.forName("com.mysql.cj.jdbc.Driver"); 
conn = DriverManager.getConnection(DB_URL, USER, PASS); 
stmt = conn.createStatement();

 

Objekti rs i klasës ResultSet merr vlerën nga ekzekutimi i query dhe do përdoret për të afishuar rezultatin e query.

String sql = "SELECT id, emri, mbiemri, mosha FROM REGISTER"; 
ResultSet rs = stmt.executeQuery(sql); 
int id, mosha;
String emri, mbiemri;
  while(rs.next()){ 
    id = rs.getInt("id"); 
    mosha = rs.getInt("mosha"); 
    emri = rs.getString("emri"); 
    mbiemri = rs.getString("mbiemri"); 
    System.out.print("ID: " + id); 
    System.out.print(", Mosha: " + mosha); 
    System.out.print(", Emri: " + emri); 
    System.out.println(", Mbiemri: " + mbiemri); 
  } 
rs.close();

 

Kodi i plotë për këtë aplikacion, si dhe për disa implementime të tjera me kode SQL, në ebook “Java dhe MySQL”.

📚 ebook Java dhe MySQL, me 10 aplikacione të ekzekutueshme në Java, mund ta shkarkoni këtu⬅️