// libreria classi per utilizzare i driver JDBC
import java.sql.*;
/**
* Questa classe di esempio illustra come connettersi ad un DB
* @version 23/11/2010
*/
public class testJDBC {
public static void main(String[] args) {
try {
//PASSO1: Caricamento del driver <- dipende dal database
// Carichiamo un driver di tipo 1 (bridge jdbc-odbc)
Class.forName("com.mysql.jdbc.Driver");
//PASSO2: stringa di connessione (URL) e creazione dell'oggetto Connection
// Creiamo la stringa di connessione
// accesso al database 'test' con user 'root' e password ''
String url = "jdbc:mysql://localhost/test?user=root&password=";
//Otteniamo una connessione con username e password
Connection con = DriverManager.getConnection (url);
//PASSO3: Creazione dell'oggetto Statement e esecuzione della query
// Creiamo un oggetto Statement per poter interrogare il db
Statement cmd = con.createStatement ();
cmd.executeUpdate("DROP TABLE `test`.`myTable`");
//eseguo la query ('executeUpdate' viene utilizzata per lanciare tutte le query tranne quelle di selezione che si utilizza 'executeQuery')
cmd.executeUpdate("CREATE TABLE `test`.`myTable` ("+
"`nome` VARCHAR( 20 ) NOT NULL ," +
"`anno` INT NOT NULL " +
") ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci;");
cmd.executeUpdate("INSERT INTO `test`.`myTable` (`nome`,`anno`) " +
"VALUES ('Matteo',1988), " +
"('Simone','1985')");
//Eseguiamo una query e immagazziniamone i risultati
// in un oggetto ResultSet
String qry = "SELECT * FROM `test`.`myTable`";
ResultSet res = cmd.executeQuery(qry);
//PASSO4: elaborazione dei risultati tramite ResultSet
// Stampiamone i risultati riga per riga
while (res.next()) {
System.out.println(res.getString("nome"));
System.out.println(res.getString("anno"));
}
//Rilascio delle risorse
res.close();
cmd.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
// java non trova il driver per il database
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}