ITportal
a- a+

JDBC e l'accesso ai database (Parte II)

Pagina 2 di 4

UN TEST CON MYSQL
Il primo test sarà effettuato servendosi di MySQL, unnoto DBMS open source. Per prima cosa, dunque, dovreteinstallare tale software nella vostra postazione di lavoro.MySQL è disponibile per diverse piattaforme. Ildownload può essere eseguito gratuitamente partendodall'indirizzo http://www.mysql.com. MySQL dispone sia diun driver JDBC sia di un driver ODBC. Per questo primo testsarà impiegato il driver JDBC chiamato Connector/J,che può essere prelevato dalla paginahttp://www.mysql.com/downloads/api-jdbc-stable .html.Affinché tale driver possa essere visto dalleapplicazioni Java, è necessario notificare allamacchina virtuale la presenza dell'archivio JAR contenutonel pacchetto scaricato. Per far ciò, èpossibile operare in diversi modi. Se utilizzate Tomcat o unApplication Server della medesima fattura, vi convienecopiare il pacchetto JAR nella cartella WEB-INF/libdell'applicazione Web che a breve andremo a realizzare.Se queste due cartelle nidificate non esistono giàall'interno dello spazio dedicato all'applicazione,createle da voi. In altri casi, è possibile depositareuna copia dell'archivio JAR all'interno delladirectory jre/lib/ext, nella cartella che contienel'installazione di Java. Naturalmente, i percorsi e leoperazioni necessarie possono variare da un sistemaall'altro. Un'altra efficace tecnica èl'aggiunta del percorso dell'archivio JAR nellavariabile di sistema CLASSPATH. Una volta completate leoperazioni preliminari, è necessario realizzare undatabase MySQL utile per il test. Attivate il DBMS, quindiconnettetevi ad esso servendovi dell'apposito programmada riga di comando contenuto nella cartella bin di MySQL(mysql.exe, per la versione Windows). Il primo comando daimpartire è il seguente:

CREATE DATABASE JSPTest;

 

Quindi, selezionate il database per l'uso appenacreato:
 

USE JSPTest;



Realizzate la tabella che sarà impiegata per il test,sfruttando il seguente codice SQL:
 

CREATE TABLE `Persone` (  Nome  VARCHAR (50) NOT NULL,  Cognome  VARCHAR (50) NOT NULL,  Indirizzo VARCHAR (50) NOT NULL);



Infine, è necessario popolare la tabella con alcunirecord esemplificativi:

INSERT INTO Persone (  Nome, Cognome, Indirizzo) VALUES (  'Mario', 'Rossi', 'Via Roma 25');INSERT INTO Persone (Nome, Cognome, Indirizzo)   VALUES ('Luigi', 'Bianchi', 'Via Milano 38');INSERT INTO Persone (Nome, Cognome, Indirizzo)   VALUES ('Antonio', 'Verdi', 'Via Genova 12');


Giunti a questo punto, abbiamo ottenuto una tabella Personecome quella mostrata di seguito:
 

Nome Cognome Indirizzo
Mario Rossi Via Roma 25
Luigi Bianchi Via Milano 38
Antonio Verdi Via Genova 12



Prepariamoci per utilizzare la tabella da una pagina JSPesemplificativa. Il codice necessario è riportato diseguito:

<%@ page import="java.sql.*" %><%! String DRIVER = "com.mysql.jdbc.Driver";String DB_URL = "jdbc:mysql://localhost:3306/JSPTest";%><html><head> <title>Corso di JSP, Lezione 11, Esempio 1</title></head><body>  <h1>Accesso ad un database MySQL</h1>  <% // Carico il driver.  Class.forName(DRIVER);  // Preparo il riferimento alla connessione.  Connection connection = null;   try { // Apro la connesione verso il database.   Connection connection =   DriverManager.getConnection(DB_URL);  // Ottengo lo Statement per interagire con il database.  Statement statement = connection.createStatement();  // Interrogo il DBMS mediante una query SQL.  ResultSet resultset = statement.executeQuery(   "SELECT Nome, Cognome, Indirizzo FROM Persone");  // Scorro e mostro i risultati.  while (resultset.next()) {  String nome = resultset.getString(1);  String cognome = resultset.getString(2);  String indirizzo = resultset.getString(3); %>  <b>Nome:</b> <%= nome %><br>  <b>Cognome:</b> <%= cognome %><br>  <b>Indirizzo:</b> <%= indirizzo %><br><br>  <% }} catch (SQLException e) {  // In caso di errore...%><b>Eccezione:</b> <%= e.toString() %><%  } finally {   if (connection != null) connection.close(); }%></body> </html>

 

Continua >>>



Ti potrebbe interessare anche

commenta la notizia