Tecnologie Web: Parte 6i [Giovedì, 25 Maggio 2006, 1/2 LABORATORIO]

Home /  Teaching

Utilizzare la libreria di TAG JSTL sql

L'utilizzo della libreria di tag sql è ovviamente condizionato al fatto di aver installato un database con il quale interfacciare la nostra applicazione. I database disponibili sono molti; per il corso consigliamo il database MySQL che può essere facilemente amministrato tramite PhpMyAdmin. Per comodità di installazione, vale pena installare EasyPhp. In questo caso, per evitare che sia Apache ad utilizzare la porta 80, conviene fare partire prima Tomcat e poi EasyPhp. Ovviamente per utilizzare PhpMyAdmin, bisogna spegnere Tomcat e fare partire Apache.

Da casa, per accedere alla console di gestione del database (ad esempio per provare gli esempi visti a lezione senza PhpMyAdmin), dovete aprire un propt dei comandi (la vecchia finestra DOS) e lanciare il comando

C:\>c:\Programmi\EasyPHP1-8\mysql\bin\mysql.exe -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 18 to server version: 4.1.9-max

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql\> use twDB
Database changed
mysql\> show tables;
+----------------+
| Tables_in_twdb |
+----------------+
| persone        |
+----------------+
1 row in set (0.00 sec)

dove c:\Programmi\EasyPHP1-8 è la cartella dove avete installato EasyPhp. L'utente standard è "root" con password una stringa vuota (semplicemente premete invio).

Per permettere alla libreria di TAG (ma anche ad una servlet) di comunicare con il database, serve un connettore, cioè una libreria opportuna. Ogni produttore di database ne fornisce una propria. Nel caso di MySQL, bisogna scaricare il connettore da http://www.mysql.com/products/connector/j/ [la versione stabile più recente al momento è la mysql-connector-java-3.1.12.zip; per comodità potete scaricarla dal mirror: http://cdn.mirror.garr.it/mirrors/MySQL/Downloads/Connector-J/]. Dall'archivio dovete estrarre il file mysql-connector-java-3.1.12-bin.jar e metterlo nella cartella <inizialeCognome>\WEB-INF\lib del vostro progetto [oppure nella sottocartella TOMCAT_HOME\common\lib dove TOMCAT_HOME è la cartella dove avete installato Tomcat, se volete che il connettore sia disponibile per tutte le vostre applicazioni].

In laboratorio, per configurare il database MySQL dovete utilizzare l'applicazione PhpMyAdmin all'indirizzo: https://jsp.dti.unimi.it/ (notate HTTPS). L'utente jsp non può creare database quindi ogni studente si scelga uno dei 5 database già pronti per lavorare. Ciascuna delle tabelle, per essere distinta da quella di altri studenti, deve contenere il postfisso "_inizialeCognome" relativo allo studente in questione.

Ad esempio, per quanto riguarda gli esempi visti a lezione, i parametri di configurazione relativi a "rsassi" che ha scelto di utilizzare il database dbjsp1 saranno:

<sql:setDataSource 
	url="jdbc:mysql://localhost/dbjsp1"
	driver="com.mysql.jdbc.Driver"
	user="jsp"
	password="[la password indicata a lezione]"  />


Esercizi per il laboratorio

Esercizio 0

Seguite le note indicate sopra e create (con PhpMyAdmin) in un database di vostra scelta una tabella come quella vista a lezione, qui riportata per vostra comodità:

CREATE TABLE IF NOT EXISTS persone (
id INT AUTO_INCREMENT,
nome VARCHAR(20) NOT NULL,
cognome VARCHAR(35) NOT NULL,
datanasc DATE NOT NULL,
citta VARCHAR(35) NOT NULL,
UNIQUE(id)
);

Quindi, create una pagina HTML che invochi la pagina JSP, readDBdata3.jsp vista a lezione in modo da permettere l'inserimento di records nella vostra tabella. Infine create la pagina readDBdata2.jsp, vista a lezione e provate ad eseguirla.

Esercizio 1

Scrivere una JSP che conti il numero di record contenuti nella vostra tabella.