Acest articol este o introducere în integrarea dintre o aplicație Java și o bază de date MySQL.
Java este un limbaj de programare orientat pe obiecte și foarte popular iar MySQL este un sistem liber de baze de date. Pentru informații suplimentare vezi secțiunea legături utile.
Bazele de date sunt folosite la scară largă chiar și atunci când nu este imperios necesar, iar mulți începători de Java întâmpină probleme la integrarea dintre aplicația lor și sistemul de baze de date MySQL. Acest articol vrea să-i ajute și să ofere un model de interoperabilitate între utilizator, prin interfața grafică implementată în Swing și baza de date. Codul scris ca exemplu este liber, simplu și robust.
În urma parcurgerii acestui articol și a codului aferent vei ști:
Pașii algoritmului sunt:
Încărcarea modului MySQL
Class.forName("com.mysql.jdbc.Driver");
Conectarea la baza de date, folosind adresa serverului (localhost dacă este un server local), nume utilizator și parolă
m_connection = DriverManager.getConnection(url, user, pass);
Execuția unei comenzi SQL
command = "SELECT * FROM Articole";
stmt = m_connection.prepareStatement(command);
result = stmt.executeQuery();
Prelucrarea rezultatului întors de o comandă
while (result.next()){
//
String id = result.getString("id");
String titlu = result.getString("titlu");
String popularitate = result.getString("popularitate");
System.out.println(id + Constants.SEPAR + titlu + Constants.SEPAR + popularitate);
}
$ ant
$ ant clean
$ ant run
$ ant gui
mysql -u $USER -p$PASSWORD < fii-liber.sql
CREATE DATABASE IF NOT EXISTS fiiliber_db;
USE fiiliber_db;DROP TABLE IF EXISTS `Articole`;
CREATE TABLE `Articole` (
`id` int(10) unsigned NOT NULL auto_increment,
`titlu` varchar(45) NOT NULL,
`popularitate` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;INSERT INTO `Articole` (`titlu`,`popularitate`) VALUES
('OpenShot', 7),
('FLAC', 3),
('Eclipse IDE', 10),
('Vara 2010 Ceata', 5),
('Hacherii GNU', 21),
('Ghid introductiv in GNU Emacs', 15);
SELECT * FROM Articole ORDER BY popularitate ASC;
SELECT * FROM Articole where popularitate = (select MAX(popularitate) FROM Articole);

Baza de date și interogările de mai sus nu sunt optimizate. Mulțumim lui Doru Ilași pentru optimizări:
SELECT * FROM Articole ORDER BY popularitate DESC LIMIT 1;
CREATE INDEX indexul_meu ON Articole (popularitate);
Comentarii
Anonymous (neverificat)
Marţi, 10 August 2010
Link permanent
Poate ar trebui sa contribuim si un articol cu jdbc si Firebird
o sa imi fac timp sa contribui un articol introductiv jdbc si firebird
Anonymous (neverificat)
Joi, 12 August 2010
Link permanent
jdbc Firebird
găsești aici tot ce trebuie http://www.firebirdsql.org/index.php?op=devel&sub=jdbc&id=faq
Alina Bordeianu
Joi, 12 August 2010
Link permanent
autentificare
ar trebui să te autentifici/înregistrezi înainte, ca să știm și noi cu cine vorbim
.