Lezione jsp pdatabase crud quintaparte

17
Jun 14, 2 022 Tutorial JSP database- quinta parte Silvano Natalizi

description

gestione di una tabella associativa

Transcript of Lezione jsp pdatabase crud quintaparte

Page 1: Lezione jsp pdatabase crud quintaparte

Apr 13, 2023

Tutorial JSP database-quinta parte

Silvano Natalizi

Page 2: Lezione jsp pdatabase crud quintaparte

Obiettivo della lezione

L’obiettivo di questa lezione è quello di creare una pagina web dinamica che ci consenta di associare ad un titolo di un libro i suoi autori.

La relazione tra titolo e autore è molti a molti. Di conseguenza abbiamo una tabella associativa fatta

dalla chiave esterna di titolo e da quella di autore. Questi due campi insieme costituiscono la chiave

primaria della tabella associativa: autore_titolo autore_titolo (autore_id,titolo_id)

Page 3: Lezione jsp pdatabase crud quintaparte

Ipotesi di Interfaccia grafica Possiamo partire dalla pagina che

elenca i titoli. Aggiungiamo un link

“associa autori”

Page 4: Lezione jsp pdatabase crud quintaparte

Modifichiamo IndiceTitolo.jsp

Page 5: Lezione jsp pdatabase crud quintaparte

Otteniamo:

Cliccando il link, si chiede a Tomcat di eseguire la java server page AssociaAutori.jsp

e le si passa il valore della chiave primaria del titolo interessato

Page 6: Lezione jsp pdatabase crud quintaparte

Cosa deve fare la AssociaAutori.jsp

Questa jsp deve mostrare una pagina web con il titolo selezionato per essere associato ai suoi autori e con una form avente la lista degli autori sotto forma di

checkbox Si selezionano i box degli autori e si sottomette il tutto al

programma di aggiornamento che inserisce le righe nella tabella associativa autore_titolo

Facciamolo.

Page 7: Lezione jsp pdatabase crud quintaparte

AssociaAutore -1 prende il parametro id di titolo Legge il titolo con id Lo mostra nella pagina

Page 8: Lezione jsp pdatabase crud quintaparte

AssociaAutore.jsp - 2 Legge la tabella autore Crea una form con la lista

selezionabile dei nomi degli autori tramite controllo checkbox

Page 9: Lezione jsp pdatabase crud quintaparte

Interfaccia grafica di AssociaAutore.jsp

Page 10: Lezione jsp pdatabase crud quintaparte

InserisciAutoriTitolo.jsp

questo programma deve anzitutto leggere l’array degli autori scelti dall’utente per associarli al titolo in lavorazione.

Come si fa?

String[] autori=request.getParameter(“autori[]”); ?

proviamolo

Page 11: Lezione jsp pdatabase crud quintaparte

L’istruzione getParameter(…)

L’istruzione request.getParameter() non funziona perché restituisce un solo valore

In questo caso occorre una funzione che restituisca multipli valori tanti quanti i checkbox selezionati.

Occorre request.getParameterValues(“autori[]”);

Page 12: Lezione jsp pdatabase crud quintaparte

prova

Page 13: Lezione jsp pdatabase crud quintaparte

Va bene! possiamo completare il programma

Page 14: Lezione jsp pdatabase crud quintaparte

Cosa rimane da fare?

Dobbiamo rileggere la tabella associativa autore_titolo Dobbiamo fare la join con autore e con titolo

Page 15: Lezione jsp pdatabase crud quintaparte

join

Select titolo, nome from autore,titolo,autore_titolo

from autore_titolo, autore, titolo

where titolo_id=titolo.id and

autore_id=autore.id

order by titolo,autore

Page 16: Lezione jsp pdatabase crud quintaparte

Interfaccia grafica

titolo1 autore1

autore2

---------------------------- titolo2 autore3

---------------------------- titolo3 autore3

autore4

-------------------------------

………………………….

Page 17: Lezione jsp pdatabase crud quintaparte

The End