Your SlideShare is downloading. ×
0
Tutorial JSP database-quarta parte Silvano Natalizi May 9, 2010
Obiettivo della lezione <ul><li>L’obiettivo di questa lezione è quello  di fare il CRUD con l’uso di una servlet che fa da...
Piano per realizzare questa centralizzazione del CRUD <ul><li>Per ogni tabella implementiamo una distinta servlet con tutt...
Quando la servlet è in esecuzione <ul><li>Quando Tomcat manda in esecuzione la servlet necessaria a soddisfare le richiest...
L’attuale procedura funziona così: <ul><li>Dal menu’ iniziale, quando si clicca sulla parola calda “Gestisci i titoli” al ...
IndiceTitolo.jsp legge la tabella e crea la pagina web con l’indice e i link alle operazioni
Sostituiamo alla jsp una classe servlet <ul><li>Dobbiamo sostituire alla jsp una opportuna servlet </li></ul><ul><li>Quest...
Ristrutturazione del codice -1 <ul><li>Creiamo la cartella libri di webapps </li></ul><ul><li>All’interno di essa la carte...
Ristrutturazione del codice -2 <ul><li>Creiamo  la classe GestisciTitolo.java vuota e salviamola dentro classes </li></ul>...
Comando di compilazione <ul><li>javac –d . GestisciTitolo.java </li></ul><ul><li>Con il precedente comando il file compila...
Modifichiamo menu.html <ul><li>Il pathname per eseguire la servlet GestisciTitolo sia /libri/titolo  (è necessario il prim...
Navigare nel menu.html <ul><li>Per lanciare il menù, digitare l’indirizzo web : </li></ul><ul><li>localhost:8080/libri/men...
Occorre il file web.xml ! <ul><li>Lo abbiamo già creato nella cartella web-inf, ma non basta! </li></ul><ul><li>Occorre ag...
Adesso facciamo corrispondere al pathname il nome fisico della classe
Lanciamo la prima opzione del menù <ul><li>Se il programma java non estende HttpServlet non viene riconosciuto come servle...
Primo tentativo
Tutto bene ! <ul><li>Ora codifichiamo il primo metodo “index” per leggere la tabella titolo e preparare i dati per la pagi...
Scriviamo la classe CollegamentoDatabase
Quindi cominciamo a scrivere  GestioneTitolo.java  - 1
GestioneTitolo.java  - 2
GestioneTitolo.java  - 3
GestioneTitolo.java  - 4
Bene gira !! <ul><li>Visto che gira, implementiamo la prima funzione, ossia quella index(), il cui scopo è quello di legge...
il metodo  index()
La java server page Index.jsp
collaudo
Ok! Siamo arrivati al termine del quarto giorno di lavoro <ul><li>Che cosa abbiamo prodotto ?  </li></ul><ul><li>Abbiamo i...
The End Continua…
Upcoming SlideShare
Loading in...5
×

Lezione programmazione database con java Servlet - quarta parte

3,373

Published on

come programmare una servlet per gestire il crud di una tabella relazionale

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,373
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
87
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Lezione programmazione database con java Servlet - quarta parte"

  1. 1. Tutorial JSP database-quarta parte Silvano Natalizi May 9, 2010
  2. 2. Obiettivo della lezione <ul><li>L’obiettivo di questa lezione è quello di fare il CRUD con l’uso di una servlet che fa da controllore </li></ul><ul><li>pertanto implementiamo una servlet con le quattro operazioni del CRUD </li></ul><ul><li>per ciascuna delle quattro operazioni Create, Read, Update, Delete scriviamo un metodo nella servlet </li></ul><ul><li>inoltre associeremo a ciascuna azione l’opportuna pagina jsp. </li></ul>
  3. 3. Piano per realizzare questa centralizzazione del CRUD <ul><li>Per ogni tabella implementiamo una distinta servlet con tutto il codice java centralizzato in un solo posto </li></ul><ul><li>Per ogni pagina web implementiamo una java server page alla quale la precedente servlet passa i dati </li></ul><ul><li>ad ogni link o form di una pagina web, che richieda l’intervento della servlet per eseguire una certa azione, forniamo un’opportuna variabile con un valore che rappresenta l’azione da eseguire </li></ul>
  4. 4. Quando la servlet è in esecuzione <ul><li>Quando Tomcat manda in esecuzione la servlet necessaria a soddisfare le richieste del link o della form ricevuta, questa servlet esegue per prima cosa il metodo doGet() o doPost() </li></ul><ul><li>Dopo aver letto con request.getParameter() i parametri con i valori inviati dal browser, decidiamo quale metodo eseguire sulla base del valore dell’operazione ricevuto. </li></ul>
  5. 5. L’attuale procedura funziona così: <ul><li>Dal menu’ iniziale, quando si clicca sulla parola calda “Gestisci i titoli” al server viene richiesto di eseguire la java server page IndiceTitolo.jsp </li></ul>
  6. 6. IndiceTitolo.jsp legge la tabella e crea la pagina web con l’indice e i link alle operazioni
  7. 7. Sostituiamo alla jsp una classe servlet <ul><li>Dobbiamo sostituire alla jsp una opportuna servlet </li></ul><ul><li>Questa servlet deve fare tutto quello che fanno le jsp nella precedente release della procedura </li></ul><ul><ul><li>tutte le operazioni CRUD </li></ul></ul><ul><li>In particolare all’inizio deve leggere la tabella ed inviare i dati ad una opportuna jsp che si occuperà solo di creare la pagina web con l’elenco delle righe ed i link alle operazioni. </li></ul>
  8. 8. Ristrutturazione del codice -1 <ul><li>Creiamo la cartella libri di webapps </li></ul><ul><li>All’interno di essa la cartella WEB-INF </li></ul><ul><li>Nella cartella WEB-INF creiamo la cartella classes e lib </li></ul><ul><li>Creiamo il file web.xml vuoto </li></ul><ul><li>Dentro lib copiamo il file mysql-connector-java-5.1.12-bin.jar </li></ul>
  9. 9. Ristrutturazione del codice -2 <ul><li>Creiamo la classe GestisciTitolo.java vuota e salviamola dentro classes </li></ul><ul><li>Compiliamola e verifichiamo che </li></ul><ul><ul><li>GestisciTitolo.class sia nel package com.database.libri </li></ul></ul>
  10. 10. Comando di compilazione <ul><li>javac –d . GestisciTitolo.java </li></ul><ul><li>Con il precedente comando il file compilato GestisciTitolo.class viene automaticamente copiato dentro il package </li></ul><ul><li>Inoltre non c’è bisogno di creare le cartelle del package, perché vengono generate direttamente, la prima volta che viene eseguito tale comando. </li></ul>
  11. 11. Modifichiamo menu.html <ul><li>Il pathname per eseguire la servlet GestisciTitolo sia /libri/titolo (è necessario il primo slash /) </li></ul><ul><li>dovremo mettere come valore dell’attributo href del link: href=“libri/titolo?azione=1” </li></ul>
  12. 12. Navigare nel menu.html <ul><li>Per lanciare il menù, digitare l’indirizzo web : </li></ul><ul><li>localhost:8080/libri/menu.html </li></ul><ul><li>Ma non funziona ???!!! </li></ul>
  13. 13. Occorre il file web.xml ! <ul><li>Lo abbiamo già creato nella cartella web-inf, ma non basta! </li></ul><ul><li>Occorre aggiungere il minimo possibile di istruzioni: </li></ul>
  14. 14. Adesso facciamo corrispondere al pathname il nome fisico della classe
  15. 15. Lanciamo la prima opzione del menù <ul><li>Se il programma java non estende HttpServlet non viene riconosciuto come servlet ed abbiamo l’errore 404 o 500 </li></ul><ul><li>Pertanto dobbiamo sistemare il codice di GestioneTitolo.java </li></ul>
  16. 16. Primo tentativo
  17. 17. Tutto bene ! <ul><li>Ora codifichiamo il primo metodo “index” per leggere la tabella titolo e preparare i dati per la pagina elenco titoli. </li></ul><ul><li>Prima però sistemiamo una volta per tutte il collegamento con il database scrivendo una classe il cui scopo è proprio quello di collegarci al database. </li></ul>
  18. 18. Scriviamo la classe CollegamentoDatabase
  19. 19. Quindi cominciamo a scrivere GestioneTitolo.java - 1
  20. 20. GestioneTitolo.java - 2
  21. 21. GestioneTitolo.java - 3
  22. 22. GestioneTitolo.java - 4
  23. 23. Bene gira !! <ul><li>Visto che gira, implementiamo la prima funzione, ossia quella index(), il cui scopo è quello di leggere tutte le righe della tabella titolo e di inviarle all’opportuna jsp per visualizzare l’interfaccia grafica. </li></ul>
  24. 24. il metodo index()
  25. 25. La java server page Index.jsp
  26. 26. collaudo
  27. 27. Ok! Siamo arrivati al termine del quarto giorno di lavoro <ul><li>Che cosa abbiamo prodotto ? </li></ul><ul><li>Abbiamo implementato solo la prima della quattro operazioni fondamentali del CRUD. </li></ul><ul><li>Tuttavia c’è una cosa buona: </li></ul><ul><ul><li>abbiamo usato poco codice duplicato. </li></ul></ul><ul><li>Dobbiamo ancora implementare le altre operazioni, ma la servlet è sempre quella! </li></ul><ul><li>Non resta che aggiungere gli altri metodi. </li></ul>
  28. 28. The End Continua…
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×