Laboratorio di sistemi MVC versione 2 Jsp (NetBeans)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di sistemi MVC versione 2 Jsp (NetBeans)"

Transcript

1 Definizione Adattato da " Model-View-Controller (MVC, talvolta tradotto in italiano Modello-Vista-Controllore) è il nome di un design pattern fondamentale nello sviluppo di interfacce grafiche di sistemi software object-oriented. Originariamente impiegato dal linguaggio Smalltalk, il pattern è stato esplicitamente o implicitamente sposato da numerose tecnologie moderne, come framework basati su Java (Swing, JSF e Structs) su Objective C o su.net. A causa della crescente diffusione di tecnologie basate su MVC nel contesto di framework o piattaforma middleware per applicazioni Web, l'espressione framework MVC o sistema MVC sta entrando nell'uso anche per indicare specificatamente questa categoria di sistemi (che comprende per esempio Struts, Spring e Tapestry). Soluzione La soluzione viene interpretata a modo proprio dagli implementatori, ma in linea generale è questa: l' applicazione deve separare i componenti software che implementano il modello delle funzionalità di business (Model), dai componenti che implementano la logica di presentazione (View) e la logica di controllo (Controller). Schema di funzionamento Model è il cuore dell'applicazione. Definisce i dati e le operazioni che possono essere eseguiti su essi. Fornisce delle funzioni per l'accesso e l'aggiornamento. Può inoltre avere la responsabilità di notificare ai componenti della View eventuali aggiornamenti verificatisi in seguito a richieste del Controller, al fine di permettere alle View di presentare agli occhi degli utenti dati sempre aggiornati. View è l'interfaccia grafica (GUI) con cui l'utente interagisce. Il Controller ha la responsabilità di trasformare le interazioni dell'utente della View in azioni eseguite dal Model. Ma il Controller non rappresenta un semplice "ponte" tra View e Model. Realizzando la mappatura tra input dell'utente e processi eseguiti dal Model, il Controller implementa la logica di controllo dell'applicazione. MVC2.pdf Pag. 1/15 Cozzetto

2 Design Pattern Nell'ingegneria del software, un design pattern può essere definito "una soluzione progettuale generale a un problema ricorrente". Esso non è una libreria o un componente di software riusabile, quanto una descrizione o un modello da applicare per risolvere un problema che può presentarsi in diverse situazioni durante la progettazione e lo sviluppo del software. La differenza tra un algoritmo e un design pattern è che il primo risolve problemi computazionali, mentre il secondo è legato agli aspetti progettuali del software. Framework Nella produzione del software, il framework è definito come una struttura di supporto dove un software può essere organizzato e progettato. Un framework include il programma di gestione, le librerie di codice, un linguaggio di scripting e altro materiale in grado di aiutare gli sviluppatori a unire tutti i vari materiali prodotti per fornire il software finale. Il framework è sviluppato con l'intento di facilitare la produzione di software, permettendo ai programmatori di concentrarsi sulla qualità del codice e pensando meno a dettagli minori come il linking fra le varie risorse. JSP Model 1 Architecture Nel Modello 1, le richieste del client vengono indirizzate verso pagine JSP, le quali devono provvedere a svolgere tutto il lavoro necessario (creare JavaBean, recuperare i dati da un database ecc) e controllare il flusso dell applicazione. Questa architettura si adatta a semplici applicazioni. Presenta infatti degli svantaggi che ne limitano l uso nelle applicazioni complesse. Primo, essa richiede di incorporare all interno delle JSP la cosiddetta business logic rappresentata in genere da codice java. Questo crea problemi ai web designer che di solito non sono a loro agio con la programmazione server side. Secondo, questo approccio non favorisce il riutilizzo dei componenti dell applicazione. Per esempio il codice scritto in una JSP per autenticare un utente non potrebbe essere riutilizzato in altre pagine. MVC2.pdf Pag. 2/15 Cozzetto

3 JSP Model 2 Architecture L architettura JSP Model 2 conosciuta anche come architettura MVC tiene rigorosamente separati il livello della presentazione (View), il livello della logica di controllo (Controller) e lo stato dell applicazione rappresentato dai dati (Model). Nel Modello 2, il controllo del flusso (o flusso dell applicazione) è incorporato in un altro modulo chiamato Controller. Il Controller (di solito una servlet) riceve tutte le richieste dell applicazione ed è responsabile di intraprendere le azioni appropriate in risposta ad ogni richiesta. Una volta ottenuti i dati, richiama la vista appropriata, di solito una pagina JSP (livello di presentazione ). Il Model, rappresentato ad esempio da JavaBean, Business Object e Database, mantiene lo stato dell applicazione. Di solito, esso copre il livello di business e il livello dati dell applicazione. Il compito della View invece è quello di recuperare l informazione fornita dal Controller e dal Model e presentarla all utente. La View pertanto non dovrebbe alterare lo stato del Model o intraprendere qualsiasi genere di elaborazione. Il grosso vantaggio di questo modello è la facilità della manutenzione che risulta dalla separazione delle responsabilità. Il Controller presenta un singolo punto d ingresso nell applicazione (questo rende l applicazione più sicura). Inoltre i componenti software prodotti possono essere riutilizzati e questo aiuta i web designer a lavorare solo col livello di presentazione dal momento che le JSP non richiedono alcuna complessa business logic. In questo modo si risolvono i problemi evidenziati nel modello 1. MVC2.pdf Pag. 3/15 Cozzetto

4 Proviamo a riscrivere l'applicativo GestioneBibliotecaWebApp2 (si veda il mio articolo nella sezione Java, Web Application, file crud_mysql.pdf; si scriva crud come parola chiave nella casella di ricerca). Per semplicità non inseriamo le classi Autore, Editore, Libro e DAO, mentre invece riportiamo il codice della classe Controller (la servlet che provvede a controllare il flusso di esecuzione) e il codice delle pagine jsp utilizzate. Per ulteriori dettagli, si scarichi il progetto allegato al corrente pdf (GestioneBibliotecaWebApp5.zip). Osserviamo, intanto, attraverso delle schermate, il comportamento dell'applicativo. Fig. 1 La prima schermata dell'applicativo Fig. 2 Tabella libri_tbl (database MySQL biblio_db) con i link per inserire, aggiornare e cancellare record MVC2.pdf Pag. 4/15 Cozzetto

5 Fig. 3 Inserimento di un libro Fig. 4 L'inserimento è riuscito MVC2.pdf Pag. 5/15 Cozzetto

6 Fig. 5 Aggiornamento del record Fig. 6 Aggiornamento riuscito MVC2.pdf Pag. 6/15 Cozzetto

7 Fig. 7 Cancellazione del record con titolo prova File Action.java /** * Action.java */ package it.mauriziocozzetto.classipkg; /** maurizio */ public enum Action { UPDATE, CONFIRM_UPDATE, DELETE, INSERT, CONFIRM_INSERT, VIEW; Codice della servlet (Controller.java) package it.mauriziocozzetto.classipkg; import java.io.ioexception; //import java.io.printwriter; import java.sql.sqlexception; import java.util.logging.level; import java.util.logging.logger; import javax.servlet.requestdispatcher; import javax.servlet.servletexception; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; MVC2.pdf Pag. 7/15 Cozzetto

8 /** * maurizio */ public class Controller extends HttpServlet { // <editor-fold defaultstate="collapsed" desc="httpservlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>get</code> method. request servlet request response servlet response ServletException if a servlet-specific error occurs IOException if an I/O error occurs */ /** * Processes requests for both HTTP <code>get</code> and <code>post</code> methods. request servlet request response servlet response ServletException if a servlet-specific error occurs IOException if an I/O error occurs */ protected void processrequest(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException, ClassNotFoundException, SQLException { //response.setcontenttype("text/html;charset=utf-8"); //PrintWriter out = response.getwriter(); // l'oggetto out qua non si dovrebbe proprio usare // lo tengo per questioni di debugging // istanzio un oggetto DAO DAO dao = new DAO(); // apro la connessione col db dao.openconn(); // leggo l'azione // i valori previsti sono (inseriti in una struttura enum) // INSERT, UPDATE, DELETE, CONFIRM_UPDATE, CONFIRM_INSERT, VIEW String action = request.getparameter("action"); String isbn = null; Libro l = null; String titolo = null; int result = 0; switch(action.valueof(action)) { // se devo aggiornare case UPDATE: // leggo l'isbn isbn = request.getparameter("isbn"); // imposto l'attributo listalibri // trovo il libro con l'isbn specificato l = dao.trovalibro(isbn); MVC2.pdf Pag. 8/15 Cozzetto

9 // se non trovo il libro if (l==null) { String message="il libro con codice isbn "+isbn+" non esiste"; else { // imposto i due attributi request.setattribute("isbn", l.getisbn()); request.setattribute("titolo", l.gettitolo()); // vado alla pagina specificata gotopage("/modificalibro.jsp",request,response); // fine if l==null break; // se devo inserire case INSERT: gotopage("/inseriscilibro.jsp",request, response); break; // se confermo l'aggiornamento case CONFIRM_UPDATE: // leggo i 3 parametri del form di aggiornamento isbn = request.getparameter("isbntxt"); titolo = request.getparameter("titolotxt"); String isbnhdn = request.getparameter("isbnhdn"); // creo un libro con isbn, titolo // NB la routine di modifica nella classe DAO è stata semplificata l = new Libro(isbn, titolo); // modifico il libro l (il vecchio isbn è stato conservato in isbnhdn) result = dao.modificalibro(l,isbnhdn); // se la modifica ha avuto successo result > 0 if (result>0) { String message="modificato record, nuovo isbn "+isbn; else { String message="impossibile modificare record con isbn = "+isbnhdn; // fine if result >0 break; // se devo cancellare case DELETE: // leggo l'isbn isbn = request.getparameter("isbn"); // trovo il libro con l'isbn specificato l = dao.trovalibro(isbn); // se non esiste il libro con quell'isbn if (l==null) { String message="il libro con codice isbn "+isbn+" non esiste"; // se invece lo trovo lo cancello else { result = dao.cancellalibro(l); MVC2.pdf Pag. 9/15 Cozzetto

10 "+isbn; if (result>0) { // ricarico la lista dei libri // in questo modo non viene considerato il libro appena eliminato String message="cancellazione effettuata correttamente record con isbn = else { String message="impossibile cancellare il record"; // fine if result>0 // fine if l==null break; // se devo confermare l'inserimento case CONFIRM_INSERT: // lettura di isbn, titolo isbn = request.getparameter("isbntxt"); titolo = request.getparameter("titolotxt"); // noto l'isbn, trovo il libro l l = dao.trovalibro(isbn); // se non esiste il libro con chiave isbn posso inserirlo nel db if (l==null) { // creo il libro l = new Libro(isbn, titolo); // lo inserisco nel db result = dao.salvalibro(l); // se l'inserimento riesce result>0 if (result>0) { String message="inserimento effettuato record con isbn="+isbn; else { String message="impossibile registrare il record con isbn="+isbn; // fine if result>0 else { String message="record con isbn="+isbn+" gia' esistente"; // fine if==null break; // se devo visualizzare i dati della tabella libri case VIEW: // imposto l'attributo listalibri gotopage("/view.jsp",request, response); break; default: // nulla da fare break; // fine switch // chiusura dell'oggetto dao dao.closeconn(); // fine metodo processrequest MVC2.pdf Pag. 10/15 Cozzetto

11 @Override protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { try { processrequest(request, response); catch (ClassNotFoundException ex) { Logger.getLogger(Controller.class.getName()).log(Level.SEVERE, null, ex); catch (SQLException ex) { Logger.getLogger(Controller.class.getName()).log(Level.SEVERE, null, ex); /** * Handles the HTTP <code>post</code> method. request servlet request response servlet response ServletException if a servlet-specific error occurs IOException if an I/O error occurs protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { try { processrequest(request, response); catch (ClassNotFoundException ex) { Logger.getLogger(Controller.class.getName()).log(Level.SEVERE, null, ex); catch (SQLException ex) { Logger.getLogger(Controller.class.getName()).log(Level.SEVERE, null, ex); /** * Returns a short description of the servlet. a String containing servlet description public String getservletinfo() { return "Questa servlet fa da Controller nel paradigma MVC"; // </editor-fold> // serve per spostarsi sulla pagina specificata public void gotopage(string pagename, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { RequestDispatcher d = getservletcontext().getrequestdispatcher(pagename); d.forward(request, response); // fine servlet Controller MVC2.pdf Pag. 11/15 Cozzetto

12 File index.jsp contenttype="text/html"%> pageencoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>database biblio_db</title> <style type="text/css"> body,td,th { font-family: Verdana; font-size: 16px; </style> </head> <body> <h3>tabella Libri</h3> <p><a href='controller?action=view'>lista libri</a></p> </body> </html> File view.jsp <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <%@page errorpage = "gestioneerrori.jsp" %> <%@taglib uri=" prefix="c"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>database biblio_db</title> <style type="text/css"> body,td,th { font-family: Verdana; font-size: 16px;.testoRosso { color: red; </style> </head> <body> <h3>tabella Libri</h3> MVC2.pdf Pag. 12/15 Cozzetto

13 <c:if test="${!empty param.message"> <span class="rosso"><c:out value="${param.message" /></span> <br/> </c:if> <p><a href="controller?action=insert">inserisci</a></p> <table border="1"> <tr> <th>isbn</th> <th>titolo</th> <th>modifica</th> <th>cancella</th> </tr> <c:foreach items="${listalibri" var="libro"> <tr> <td>${libro.isbn</td> <td>${libro.titolo</td> <td><a href="controller?action=update&isbn=${libro.isbn">modifica</a></td> <td><a href="controller?action=delete&isbn=${libro.isbn">cancella</a></td> </tr> </c:foreach> </table> </body> </html> File inseriscilibro.jsp contenttype="text/html"%> pageencoding="utf-8"%> errorpage = "gestioneerrori.jsp"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html"> <title>inserimento</title> <style type="text/css"> body,td,th { font-family: Verdana; font-size: 16px; border: 0px;.testoRosso { color: red; </style> </head> <body> <h3>inserimento</h3> MVC2.pdf Pag. 13/15 Cozzetto

14 <form id="provafrm" method="get" action="controller" > <input type="hidden" name="action" value="confirm_insert"/> Isbn <input type="text" name="isbntxt" value="" size="30"/> <span class="testorosso">*</span><br/> Titolo <input type="text" name="titolotxt" value="" size="30" /> <span class="testorosso">*</span> <br/> <input type="submit" name="inviabtn" value="invia"/><br/> <p><span class="testorosso">* Dati obbligatori</span></p> </form> </body> </html> File modificalibro.jsp contenttype="text/html"%> pageencoding="utf-8"%> errorpage = "gestioneerrori.jsp" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>modifica</title> <style type="text/css"> body,td,th { font-family: Verdana; font-size: 16px; border: 0px;.testoRosso { color: red; </style> </head> <body> <h3>modifica</h3> <form id="provafrm" method="get" action="controller" > <input type="hidden" name="action" value="confirm_update"/> Isbn <input type="text" name="isbntxt" value="${isbn" size="30" /> <span class="testorosso">*</span><br/> Titolo <input type="text" name="titolotxt" value="${titolo" size="30" /> <span class="testorosso">*</span><br/> <input type="hidden" name="isbnhdn" value="${isbn"/> <input type="submit" name="inviabtn" value="invia"/><br/> <p> <span class="testorosso">* Dati obbligatori</span></p> </form> </body> </html> MVC2.pdf Pag. 14/15 Cozzetto

15 File gestioneerrori.jsp contenttype="text/html"%> pageencoding="utf-8"%> iserrorpage = "true" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>gestione errori</title> <style type="text/css"> body,td,th { font-family: Trebuchet MS; font-size: 16px; </style> </head> <body> <h3>gestione errori</h3> Siamo spiacenti, si è verificato un errore durante l'esecuzione:<br/> <%= exception.getmessage()%> </body> </html> MVC2.pdf Pag. 15/15 Cozzetto

Introduzione al Model-View-Controller (MVC)

Introduzione al Model-View-Controller (MVC) Introduzione al Model-View-Controller (MVC) Maurizio Cozzetto 9 Luglio 2009 Indice 1 Model-View-Controller 1 1.1 Definizione.................................................. 1 1.2 Soluzione...................................................

Dettagli

Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL)

Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL) Pag. 1/12 Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL) Prendiamo in esame un qualsiasi progetto NetBeans tra quelli studiati che fa uso di un database

Dettagli

Laboratorio di sistemi Prima Web Application JSP [Java]

Laboratorio di sistemi Prima Web Application JSP [Java] Vogliamo scrivere la nostra prima web application che legga da tastiera il nostro nome e fornisca un messaggio di saluto. Per costruire la nostra applicazione creiamo con NetBeans un nuovo progetto. File

Dettagli

Laboratorio di sistemi MVC Jsp [NetBeans]

Laboratorio di sistemi MVC Jsp [NetBeans] Estratto da "http://it.wikipedia.org/wiki/model-view-controller" Definizione Model-View-Controller (MVC, talvolta tradotto in italiano Modello-Vista-Controllore) è il nome di un design pattern fondamentale

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

Laboratorio di Sistemi CRUD con MySQL JSP (Java)

Laboratorio di Sistemi CRUD con MySQL JSP (Java) Il problema Vogliamo realizzare un applicativo web che consenta di inserire, modificare e cancellare i record della tabella libri_tbl (database MySQL biblio_db). In questi casi, parliamo di applicativo

Dettagli

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet 1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet Controllo dell utente connesso al sito tramite JSP, Java Beans e Servlet. Ciò che ci proponiamo di fare è l accesso

Dettagli

Progetto di Gestione Documenti in Ambiente Web

Progetto di Gestione Documenti in Ambiente Web Progetto di Gestione Documenti in Ambiente Web Sessione Febbraio 2013 Marco Taddei 726523 Federico Valentini 726584 Il progetto SharesShop simula un portale web di una banca che mette a disposizione dei

Dettagli

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Avvertenze: e severamente vietato consultare libri e appunti; chiunque verrà trovato in possesso di

Dettagli

Laboratorio di sistemi Web Application in Php5 Php

Laboratorio di sistemi Web Application in Php5 Php Applicazioni web con Xampp, Php5 e NetBeans 6.5 (Windows) Vogliamo ora riscrivere a titolo di prova un'applicazione web precedentemente scritta in Java (si legga l'articolo all'indirizzo http://www.mauriziocozzetto.net/pdf/dao_mysql.pdf).

Dettagli

Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3

Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Verso l architettura MVC-2 2 Il secondo passo verso l architettura MVC-2 è quello di separare il controllo dell

Dettagli

Laboratorio di sistemi Information hiding Jsp [Java]

Laboratorio di sistemi Information hiding Jsp [Java] Vogliamo realizzare una pagina web che ci consenta di filtrare i record della tabella books del database MySQL shop. Fig. 1 Tabella books, database MySQL shop Il filtro viene scritto direttamente dall'utente

Dettagli

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE Programmare in Php con Xampp e NetBeans IDE NetBeans è un IDE ben noto ai programmatori Java. Con esso si possono infatti costruire applicazioni desktop professionali dotate di interfaccia grafica, applicazioni

Dettagli

Implementazione di MVC. Gabriele Pellegrinetti

Implementazione di MVC. Gabriele Pellegrinetti Implementazione di MVC Gabriele Pellegrinetti 2 Come implementare il pattern Model View Controller con le tecnologie JSP, ASP e XML Implementazione del pattern MVC in Java (JSP Model 2) SUN è stato il

Dettagli

Architetture Web: un ripasso

Architetture Web: un ripasso Architetture Web: un ripasso Pubblicazione dinamica di contenuti. Come si fa? CGI Java Servlet Server-side scripting e librerie di tag JSP Tag eseguiti lato server Revisione critica di HTTP HTTP non prevede

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 9 Architettura Model-View-Controller (MVC) Adottando l'architettura MVC e la tecnologia Servlet-JSP, un'applicazione web può essere realizzata

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Programmazione server-side: Java Servlet

Programmazione server-side: Java Servlet Programmazione server-side: Java Servlet Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.11 parte II Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Cos

Dettagli

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni Tomcat & Servlet Programmazione in Ambienti Distribuiti V 1.2 Marco Torchiano 2005 Contenuti Tomcat Applicazioni Web Struttura Sviluppo Deployment Servlet JSP Uso delle sessioni 1 Tomcat Tomcat è un contenitore

Dettagli

SERVLET & JSP DISPENSE

SERVLET & JSP DISPENSE SERVLET & JSP DISPENSE PROGRAMMAZIONE LATO SERVER Un server deve rispondere alle richieste del client e permettere di visualizzare le pagine Web. Questo compito è svolto da un software ben definito, il

Dettagli

Gestire le sessioni con le Servlet

Gestire le sessioni con le Servlet PROGETTO Gestire le sessioni con le Servlet Con il termine sessione si intende un insieme di attività correlate, con una o alcune di queste che sono preliminari ad altre. Si pensi, per esempio, a un qualsiasi

Dettagli

L architettura MVC (Model- View-Controller) Introduzione

L architettura MVC (Model- View-Controller) Introduzione L architettura MVC (Model- View-Controller) Introduzione Architettura MCV L architettura MVC è un insieme di regole per strutturare un sito-web dinamico. Queste regole complicano la struttura del sito,

Dettagli

Flavio De Paoli depaoli@disco.unimib.it

Flavio De Paoli depaoli@disco.unimib.it Flavio De Paoli depaoli@disco.unimib.it 1 Il web come architettura di riferimento Architettura di una applicazione web Tecnologie lato server: Script (PHP, Pyton, Perl), Servlet/JSP, ASP Tecnologie lato

Dettagli

Laboratorio di Sistemi Prototipo applicazione Biblioteca Jsp [Java]

Laboratorio di Sistemi Prototipo applicazione Biblioteca Jsp [Java] Vogliamo progettare un prototipo di applicazione web che consenta ad un utente di ottenere, selezionando l'autore da una casella combinata, l'elenco dei libri scritti da quell'autore, come nelle figure

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Java Servlet Parte a versione 3.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca

Dettagli

<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>jsp Page</title> </head> <body>

<html> <head> <meta http-equiv=content-type content=text/html; charset=utf-8> <title>jsp Page</title> </head> <body> itext è una libreria (ottimizzata per l uso in java) per generare pdf al volo ideata da Bruno Lowagie e Paolo Soares. Per poter sviluppare un applicazione con NetBeans, dobbiamo intanto scaricare il file

Dettagli

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A. 2011-2012

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A. 2011-2012 Sapienza Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica Corso di Laurea in Ingegneria dei Sistemi Informatici

Dettagli

Laboratorio di sistemi Autenticazione utente mediante scriplet Jsp [NetBeans]

Laboratorio di sistemi Autenticazione utente mediante scriplet Jsp [NetBeans] Figura 1 - La pagina input_user.jsp appena caricata Figura 2 - Lascio vuoti entrambi i campi o immetto un solo valore Figura 3 - Immetto dei valori che non esistono nel database autent_utente_scriplet.pdf

Dettagli

Tener traccia del client

Tener traccia del client Tener traccia del client Raramente un applicazione web è costituita da una singola pagina (risorsa). E utile quindi tener traccia dei client che si collegano per rendere più semplice lo sviluppo dell applicazione.

Dettagli

Laboratorio di sistemi JSTL e database Jsp [NetBeans]

Laboratorio di sistemi JSTL e database Jsp [NetBeans] Elenco dei film ottenuti usando la libreria JSTL 1.1 elenco_film_jstl.pdf Pag. 1/18 Cozzetto Inserisco i dati di un film. Prima dell'inserimento i dati vengono confrontati con quelli della tabella film_tbl

Dettagli

Let's start! File > New Project > Ruby > Ruby on Rails Application (events)

Let's start! File > New Project > Ruby > Ruby on Rails Application (events) La nuova versione di Netbeans 6 consente di lavorare con Ruby On Rails, un potente e nuovissimo framework per lo sviluppo e la prototipazione di applicazioni web, che fa uso del design-pattern MVC (Model-View-Controller,

Dettagli

Introduzione alla programmazione Http lato server in Java

Introduzione alla programmazione Http lato server in Java Introduzione alla programmazione Http lato server in Java Tito Flagella Laboratorio Applicazioni Internet - Università di Pisa Slide API Java Titleper il Protocollo Http Programmazione Client java.net.url

Dettagli

Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java]

Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java] Per la comprensione del presente articolo, occorre aver assimilato i concetti esposti nell'articolo Prototipo autenticazione utente (file autenticazione_2.pdf). (Tratto da Wikipedia, l'enciclopedia libera)

Dettagli

CORSO DI PROGRAMMAZIONE JAVA

CORSO DI PROGRAMMAZIONE JAVA CORSO DI PROGRAMMAZIONE JAVA Corso di Programmazione Java Standard Edition ( MODULO A) OBIETTIVI ll corso ha come obiettivo quello di introdurre la programmazione a oggetti (OOP) e di fornire solide basi

Dettagli

Laboratorio di sistemi SELECT e checkbox Jsp [Java]

Laboratorio di sistemi SELECT e checkbox Jsp [Java] Fig. 1 - Vogliamo visualizzare book_id, autore e titolo dalla tabella books del database shop Fig. 2 - Tabella books select_checkbox.pdf Pag. 1/5 Cozzetto Fig. 3 - Abbiamo due record in output File index_1.jsp

Dettagli

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet Java Server Pages (JSP) Introduzione alle JSP Linguaggio di scripting lato server HTML-embedded Una pagina JSP contiene sia HTML sia codice Il client effettua la richiesta per la pagina JSP La parte HTML

Dettagli

MODEL-VIEW-CONTROLLER PROBLEMA

MODEL-VIEW-CONTROLLER PROBLEMA MODEL VIEW CONTROLLER DESIGN PATTERN MODEL-VIEW-CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 rcardin@math.unipd.it

Dettagli

Note pratiche sullo sviluppo di servlet (I)

Note pratiche sullo sviluppo di servlet (I) Note pratiche sullo sviluppo di servlet (I) Nel caso in cui sulla macchina locale (PC in laboratorio/pc a casa/portatile) ci sia a disposizione un ambiente Java (con compilatore) e un editor/ambiente di

Dettagli

La struttura dati ad albero binario

La struttura dati ad albero binario La struttura dati ad albero binario L albero è una struttura dati nella quale le informazioni sono organizzate in modo gerarchico, dall alto verso il basso. Gli elementi di un albero si chiamano nodi,

Dettagli

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp;

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp; JAVA SERVER PAGES Una pagina JSP (Java Server Pages), richiesta da un utente (client), viene eseguita dal server web nella propria memoria; generalmente il prodotto dell elaborazione è una pagina html

Dettagli

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi Applicazioni web Parte 6 Java Alberto Ferrari 1 Sommario Introduzione alle API ed esempi Tomcat Server per applicazioni web Alberto Ferrari 2 Alberto Ferrari 1 Java: da applet a servlet In origine Java

Dettagli

Svantaggi delle servlet

Svantaggi delle servlet Svantaggi delle servlet Le servlet sono la tecnologia principale di J2EE per comunicare con i browser dei client. Tuttavia ci sono degli inconvenienti per gli sviluppatori di applicazioni web: le servlet

Dettagli

Soluzione 1: controller per la pagina di dettaglio delle categorie

Soluzione 1: controller per la pagina di dettaglio delle categorie Soluzione 1: controller per la pagina di dettaglio delle categorie @WebServlet("/category") public class CategoryDetailsServlet extends HttpServlet { public void doget( HttpServletRequest request, HttpServletResponse

Dettagli

GenLApp Generazione Lista di Applicazioni. Design Patterns. Classi Essenziali. Modellazione Dati. Progettazione della Linea di Prodotti

GenLApp Generazione Lista di Applicazioni. Design Patterns. Classi Essenziali. Modellazione Dati. Progettazione della Linea di Prodotti Progettazione della Linea di Prodotti GenLApp Generazione Lista di Applicazioni Progettazione della Linea di Prodotti Classi Essenziali Responsabilità sui 3 Livelli Architetturali Descrizione delle Responsabilità

Dettagli

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1 I file WAR WAR è una contrazione di Web ARchive. I file WAR consentono di archiviare un intera applicazione web in un unico file. Tomcat fornisce (tramite il Tomcat Manager) un interfaccia grafica per

Dettagli

PROGETTAZIONE E SVILUPPO DI UN. Relatore: Studente: Paolo Merialdo Valerio Barbagallo

PROGETTAZIONE E SVILUPPO DI UN. Relatore: Studente: Paolo Merialdo Valerio Barbagallo PROGETTAZIONE E SVILUPPO DI UN SIMULATORE ECONOMICO FISCALE Relatore: Studente: Paolo Merialdo Valerio Barbagallo Sommario il problema: gestione e ottimizzazione del bilancio piattaforma J2EE e framework

Dettagli

Introduzione. Applicazione web con Java. servlet

Introduzione. Applicazione web con Java. servlet Introduzione Un applicazioe web è un applicazione client/server a cui è possibile accedere mediante un browser, ed è costituita da un insieme di pagine web generate in risposta alle richieste degli utenti.

Dettagli

J2EE (o JEE): Framework Java per lo sviluppo di applicazioni WEB Enterprise, che vivono in rete e che siano accessibili attraverso browser.

J2EE (o JEE): Framework Java per lo sviluppo di applicazioni WEB Enterprise, che vivono in rete e che siano accessibili attraverso browser. Il Pattern MVC J2EE (o JEE): Framework Java per lo sviluppo di applicazioni WEB Enterprise, che vivono in rete e che siano accessibili attraverso browser. Il famework Sun J2EE Component, Container e Connector:

Dettagli

Laboratorio di Sistemi Accesso a un database Jsp [NetBeans]

Laboratorio di Sistemi Accesso a un database Jsp [NetBeans] Modifichiamo l applicativo ListaSupereroiWebApp in modo che i dati dei supereroi non vengano caricati staticamente mediante delle istruzioni di assegnamento ma dinamicamente leggendo i record della tabella

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

- La formattazione con foglio di stile esterno: Come realizzare e collegare un file con codice di stile ad una pagina web.

- La formattazione con foglio di stile esterno: Come realizzare e collegare un file con codice di stile ad una pagina web. I fogli di stile. Argomenti trattati: - La formattazione con foglio di stile interno: Come dichiarare lo stile di una pagina web all'interno del suo codice. - Ereditarietà e selettori contestuali: Come

Dettagli

Lezione di Basi di Dati 1 18/11/2008 - TECNOLOGIE PER IL WEB: CGI - AJAX SERVLETS & JSP

Lezione di Basi di Dati 1 18/11/2008 - TECNOLOGIE PER IL WEB: CGI - AJAX SERVLETS & JSP EVOLUZIONE DEL WEB: PAGINE STATICHE vs PAGINE DINAMICHE Il Web è nato a supporto dei fisici, perché potessero scambiare tra loro le informazioni inerenti le loro sperimentazioni. L HTTP è nato inizialmente

Dettagli

Una metodologia di progettazione di applicazioni web centrate sui dati

Una metodologia di progettazione di applicazioni web centrate sui dati Una metodologia di progettazione di applicazioni web centrate sui dati A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si

Dettagli

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Dettagli

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org 1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org Applicazione J2EE sul SAP WAS con SAP NWDS. Il SAP Web Application Server fornisce un framework integrato per lo sviluppo e l

Dettagli

Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java]

Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java] Per la comprensione del presente articolo, occorre aver assimilato i concetti esposti nell'articolo Prototipo autenticazione utente (file autenticazione_2.pdf). (Tratto da Wikipedia, l'enciclopedia libera)

Dettagli

Esercizi di JavaScript

Esercizi di JavaScript Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio

Dettagli

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page» Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

Introduzione JDBC interfaccia java.sql driver caricare i driver

Introduzione JDBC interfaccia java.sql driver caricare i driver J D B C DISPENSE Introduzione JDBC (Java Database Connectivity) è un interfaccia completamente Java utilizzata per eseguire istruzioni SQL sui database. L'API JDBC si trova nel pacchetto java.sql; contiene

Dettagli

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework. tesi di laurea Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework. Anno Accademico 2008/2009 relatore Ch.mo prof. Porfirio

Dettagli

L ambizione dei design pattern (letteralmente schemi di programmazione) è quella di offrire soluzioni a problemi ricorrenti che facilitano lo

L ambizione dei design pattern (letteralmente schemi di programmazione) è quella di offrire soluzioni a problemi ricorrenti che facilitano lo Design Pattern L ambizione dei design pattern (letteralmente schemi di programmazione) è quella di offrire soluzioni a problemi ricorrenti che facilitano lo sviluppo dei programmi, il loro mantenimento,

Dettagli

Lezione III: Oggetti ASP e interazione tramite form HTML

Lezione III: Oggetti ASP e interazione tramite form HTML Lezione III: Oggetti ASP e interazione tramite form HTML La terza lezione, come le precedenti, ha avuto una durata di due ore, di cui una in aula e l altra in laboratorio, si è tenuta alla presenza della

Dettagli

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY 1 Sommario 1. INTRODUZIONE... 3 2. GET METAIO... 4 2.1. PREREQUISITI... 4 2.2. INTALLAZIONE... 4 2.3. PROGETTI ESEMPLIFICATIVI... 4 3. USARE

Dettagli

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione Riepilogo

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione Riepilogo Alma Mater Studiorum Università di Bologna Scuola di Ingegneria e Architettura Tecnologie Web T Esercitazione 09 Riepilogo Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica:

Dettagli

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione 09 Riepilogo

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione 09 Riepilogo Alma Mater Studiorum Università di Bologna Scuola di Ingegneria e Architettura Tecnologie Web T Esercitazione 09 Riepilogo Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica:

Dettagli

Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA

Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA Salerno Formazione, società operante nel settore della didattica, della formazione professionale e certificata

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

Progetto: Servizio location based per la ricerca di punti di interesse

Progetto: Servizio location based per la ricerca di punti di interesse Mauro Gentile Matr. 701870 Progetto: Servizio location based per la ricerca di punti di interesse Il progetto consiste nello sviluppo di un servizio che fornisce informazioni relative a punti di interesse

Dettagli

Architetture Software

Architetture Software Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software Architetture Software Giulio Destri Ing. del Sw: Architettura - 1 Scopo del modulo

Dettagli

Marco Faella Il paradigma Model-View-Controller. Il pattern Strategy.

Marco Faella Il paradigma Model-View-Controller. Il pattern Strategy. Marco Faella Il paradigma Model-View-Controller. Il pattern Strategy. 10 Lezione n. Parole chiave: Java Corso di Laurea: Informatica Insegnamento: Linguaggi di Programmazione II Email Docente: faella.didattica@gmail.com

Dettagli

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione Riepilogo

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione Riepilogo Alma Mater Studiorum Università di Bologna Scuola di Ingegneria e Architettura Tecnologie Web T Esercitazione 09 Riepilogo Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica:

Dettagli

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE 1. JAVA 1.1 Introduzione a Java Introduzione Cosa è Java 1.2 Sintassi e programmazione strutturata variabili e metodi tipi di dati, array operatori

Dettagli

Progetto di Basi di Dati e Multimidia Laboratorio Struttura dell applicazione web

Progetto di Basi di Dati e Multimidia Laboratorio Struttura dell applicazione web Progetto di Basi di Dati e Multimidia Labtorio Struttura dell applicazione web 1 Introduzione La progettazione è stata sviluppata basandosi sul modello MVC-2 Server Centric. I moduli creati si possono

Dettagli

Servlet API. Programmazione in Ambienti Distribuiti A.A. 2003-04

Servlet API. Programmazione in Ambienti Distribuiti A.A. 2003-04 Servlet API Programmazione in Ambienti Distribuiti A.A. 2003-04 Servlet Interfaccia Java che modella il paradigma richiesta/elaborazione/risposta tipico delle applicazioni lato server Presuppone l esistenza

Dettagli

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

Test di unità con JUnit4

Test di unità con JUnit4 Test di unità con JUnit4 Richiamo sul test di unità Il test d unità è una metodologia che permette di verificare il corretto funzionamento di singole unità di codice in determinate condizioni. Nel caso

Dettagli

Laboratorio di reti II: Java Server Pages

Laboratorio di reti II: Java Server Pages Laboratorio di reti II: Java Server Pages Stefano Brocchi brocchi@dsi.unifi.it 6 aprile, 2009 Stefano Brocchi Laboratorio di reti II: Java Server Pages 6 aprile, 2009 1 / 34 JSP - Java Server Pages Le

Dettagli

Laboratorio di Sistemi Accesso a un database MySQL NetBeans [Jsp]

Laboratorio di Sistemi Accesso a un database MySQL NetBeans [Jsp] Figura 1 Vogliamo realizzare una pagina web simile alla precedente: i dati si trovano nel db MySQL simpsons_db all'interno della tabella simpsons_tbl simpsons_mysql.pdf Pag. 1/12 Cozzetto Figura 2 - La

Dettagli

PHP: Professional Hypertext Preprocessor

PHP: Professional Hypertext Preprocessor PHP: Professional Hypertext Preprocessor Corso di Base Lezione 4 Dal Form al PHP Docente Prof. Antonio Curci 1 Capitolo 4 Dal Form al PHP Una prima forma di interattività sul web è costituita dall uso

Dettagli

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare

Dettagli

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata.

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata. Chat Si ha un server in ascolto sulla porta 4444 Quando un client richiede la connessione, il server risponde con: Connessione accettata. Nome: Il client deve rispondere con lo user name A questo punto

Dettagli

Ajax è il nome nuovo introdotto dal web 2.0, ma non si tratta di un nuovo linguaggio di. Javascript and XML

Ajax è il nome nuovo introdotto dal web 2.0, ma non si tratta di un nuovo linguaggio di. Javascript and XML Ajax Ajax è il nome nuovo introdotto dal web 2.0, ma non si tratta di un nuovo linguaggio di programmazione, piuttosto di una tecnica: Asynchronous Javascript and XML Ajax Il Javascript è una vecchia conoscenza

Dettagli

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN Il metodo migliore per creare nuovi DB è quello di usare l interfaccia del PHPMYADMIN (che viene installata automaticamente con il pacchetto easy

Dettagli

Realizzare il layout di un sito web senza utilizzare frame e tabelle

Realizzare il layout di un sito web senza utilizzare frame e tabelle Realizzare il layout di un sito web senza utilizzare frame e tabelle Questa guida descrive in maniera semplice e essenziale i passi necessari alla realizzazione di una pagina web strutturata in maniera

Dettagli

Corso di Informatica Modulo T3 B2 - Database in rete

Corso di Informatica Modulo T3 B2 - Database in rete Corso di Informatica Modulo T3 B2 - Database in rete 1 Prerequisiti Programmazione web Applicazione web Modello OSI Architettura client/server Conoscenze generali sui database Tecnologia ADO in Visual

Dettagli

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet:

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet: e JDBC Programmazione in Rete e Laboratorio Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino e : estensioni del Java API permettono di scrivere

Dettagli

Test in automatico di programmi Android

Test in automatico di programmi Android tesi di laurea Test in automatico di programmi Android Anno Accademico 2012/2013 relatore Ch.mo prof. Porfirio Tramontana candidato Andrea Macera Matr. 534002556 Scopo della tesi Creare una web application

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas PHP A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas Copyright Istituto Italiano Edizioni Atlas Programmazione lato server PHP è un linguaggio che estende le funzionalità

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile dagli studenti,

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

Realizzazione di una classe con un associazione

Realizzazione di una classe con un associazione Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile

Dettagli

Le L z e ione n e d i d V isu s a u l B asi s c Prof.ssa Paola Goi 1

Le L z e ione n e d i d V isu s a u l B asi s c Prof.ssa Paola Goi 1 Lezione di Visual Basic Prof.ssa Paola Goi 1 VISUAL BASIC E un ambiente di programmazione che permette una programmazione: VISUALE AD EVENTI Per creare programmi applicativi nel sistema operativo Windows.

Dettagli

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Programmazione Object Oriented in Java

Dettagli

Sequenza alternativa degli eventi: Variazione di prezzo superiore al 20% per almeno un articolo.

Sequenza alternativa degli eventi: Variazione di prezzo superiore al 20% per almeno un articolo. Corso di Ingegneria del software - Seconda prova di verifica in itinere, 17 dicembre 2008 C, Montangero, L. Semini Dipartimento di Informatica, Università di Pisa a.a. 2008/09 La prova si svolge a libri

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli