Sunteți pe pagina 1din 13

1

Conectarea unei aplicaii Java la un server de baze de date


Conectarea unei aplicaii Java la un server de baze de date presupune copierea ntr-un director a unui driver JDBC (Java Database Connectivity) specific serverului de baze de date care urmeaz s fie accesat. n cele ce urmeaz se va presupune c s-a instalat i lansat n execuie serverul de baze de date MysSQL. Acesta poate fi descrcat prin Internet sub forma pachetului de aplicaii destinat dezvoltrii de site-uri web xamplite, care conine printre altele serverul de web Apache i serverul de baze de date MySQL.

Pentru

pornirea

serverului

MySQL

se

lanseaz

execuie

mysql_start.bat din directorul xamplite.

2 Fereastra afiat n urma lansrii n execuie a serverului MySQL nu trebuie nchis pe toat durata rulrii aplicaiilor care vor accesa serverul deoarece la nchiderea ei este oprit i procesul mysqld.exe specific serverului MySQL.

Pentru a realiza o aplicaie n Java care acceseaz serverul MySQL trebuie realizate urmtoarele adaptri: Se descarc MySQL Connector/J de la adresa :

http://dev.mysql.com/downloads/connector/j/5.0.html.

Acesta este driverul JDBC oficial pentru MySQL. Se dezarhiveaz fiierul descrcat crearea i din directorul O soluie rezultat bun se este copiaz plasarea arhiva fiierului mysql-connector-java-5.0.6-bin.jar ntr-un director care va fi referit ulterior, la aplicaiei. mysql-connector-java-5.0.6-bin.jar n directorul xamplite/mysql. Se creaz proiectul noii aplicaii i se adaug acestuia calea spre arhiva mysql-connector-java-5.0.6-bin.jar folosind intrarea Libraries a arborelui structural al proiectului :

Rezultat:

n continuare se poate scrie aplicaia. Accesul la tabelele bazei de date presupune n principiu urmtorii pai: a. Se ncarc driverul JDBC necesar comunicaiei cu serverul MySQL folosind apelul:
Class.forName("com.mysql.jdbc.Driver");

b. Se creaz o conexiune (obiect din clasa Connection) folosind metoda static getConnection() din clasa DriverManager:
con = DriverManager.getConnection("jdbc:mysql//localhost/baza_date", "user", "password");

c. Se creaz un obiect Statement folosind obiectul din clasa Connection creat la pasul anterior .
cda = con.createStatement();

d. Se creaz o fraz SQL (obiect din clasa String) e. Se creaz un obiect din clasa ResultSet prin apelul metodei executeQuery() sau se apeleaz metoda executeUpdate() din clasa Statement folosind ca argument fraza SQL creat n pasul precedent. Prima metod este apelat pentru comenzile SELECT iar a doua pentru comenzi ca INSERT, UPDATE sau DELETE.
ResultSet rs = stmt.executeQuery(fraza_SQL);

4 f. Dac s-a trimis serverului o comand SELECT se transfer datele din rezultat (ResultSet) n controalele windows corespunztoare: JTextField, JComboBox, JTable sau JList. Exemplu fundamental: S se realizeze o aplicaie care permite introducerea ntr-o baz de date a raselor de cini.

1. Se lanseaz n execuie xampplite i se creaz baza de date rase :

2. n baza de date creat se adaug tabelele :


a. Tabelul tari :

b. Tabelul talie :

c. Tabelul scop :

d. Tabelul caine :

Pentru testarea aplicaiei se vor aduga nregistrri n primele 3 tabele create. Aceste tabele vor servi la crearea listelor unor controale din clasa JComboBox.

3. Se pornete NetBeans, se realizeaz un nou proiect (RaseCaini de tip


General / Java Application) i se realizeaz adaptrile legate de conexiunea la serverul MySQL.

4. Se adaug proiectului un fiier coninnd clasa principal raseCaini


derivat din JFrame :

5.

Clasei principale i se adaug dou variabile, conect din clasa

java.sql.Connection i stm din clasa java.sql.Statement :

6. Se creaz interfata aplicaiei. Pentru introducerea datelor, aceasta


cuprinde controalele de tip JComboBox comboTara, comboTalia, comboDestinatia i controlul nume din clasa JtextField.

comboTara comboTali

comboDestinatia nume

jButton1

jButton2

7. Se editez constructorul clasei raseCaini pentru a realiza iniializarea


tuturor variabilelor clasei.

Pentru scrierea corect a structurilor try-catch se va scrie coninutul blocului try i se va creea structura folosind opiunea corespunztoare din meniul contextual. Exemplu :

10

8. Se adauga proiectului metodele destinate popularii controalelor de


tip JComboBox . iniComboTara(), iniComboTalia(), i iniComboDest(). a. iniComboT ara() :

b. iniComboT alia() :

11

c. iniComboDest() :

9. Se adauga proiectului metodele declanate la apsarea butoanelor.


a. Butonul nregistreaz

b. Butonul Abandon

12

Executarea aplicaiei
Aplicaiile din exemplele prezentate au fost lansate n execuie exclusiv din mediul de programare NetBeans. n procesul de construire a proiectului (Build / Build Main Project) mediul de programare creaz n directorul \dist un fiier executabil.

dublu clic

13

Acesta poate fi lansat n execuie ca orice aplicaie Windows, din Windows Explorer, cu un dublu clic. Dac lansarea n execuie trebuie realizat dintr-o fereastr Command, se va introduce comanda:

S-ar putea să vă placă și