JAVA SERVLET: I filtri

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "JAVA SERVLET: I filtri"

Transcript

1 JAVA SERVLET: I filtri INTRODUZIONE Quest oggi vedremo una particolarità delle servlet che è stata introdotta nelle servlet API versione 2.3. I filtri sono un potente meccanismo che è in grado di fare quello che prima veniva fatto usando il servlet chaining (concatenamento di servlet o catene di servlet) e molto di più. Non ci fermeremo a presentare solo le caratteristiche dei filtri ma vedremo anche un esempio pratico di utilizzo. Per poter capire a fondo quello che spiegherò in questo tutorial è importante avere una buona conoscenza di Java e conoscere almeno il meccanismo generale di funzionamento delle servlet. DESCRIZIONE Quando il programmatore vuole creare un nuovo filtro da poter utilizzare all interno della propria applicazione web, non deve far altro che creare una classe che implementi l interfaccia javax.servlet.filter. Vedremo poi quali metodi bisogna implementare, nel frattempo diamo una breve descrizione del meccanismo dei filtri. Come suggerisce il nome stesso lo scopo di queste classi è quello di filtrare dei contenuti. E su quali contenuti potrebbero mai agire? Ma su richiesta e risposta naturalmente o meglio sugli oggetti che implementano le interfacce ServletRequest e ServletResponse. Definire un filtro una servlet è errato per una serie di motivi: - non creano realmente una risposta al contrario delle servlet - hanno metodi differenti rispetto alle servlet, ad esempio il metodo dofilter() - non hanno i tipici metodi doget() e dopost() delle servlet normali Lo scopo dei filtri è quello di effettuare operazioni di preprocessing delle richieste e postprocessing delle risposte: intervengono quindi prima che una richiesta raggiunga una servlet o appena dopo che una risposta esca da una servlet. Ecco un esempio di servlet che preprocessa la richiesta: Schema di funzionamento: 1) Il client invia una richiesta al server e il filtro la intercetta 2) Il filtro preprocessa la richiesta, raccogliendo eventuali informazioni 3) Il filtro richiama il metodo chain.dofilter (lo vedremo meglio dopo) per invocare la prossima servlet o il webcomponent 4) Il webcomponent invocato genera la risposta. Ecco un esempio invece di servlet che postprocessa la risposta: 1

2 Schema di funzionamento: 1) Il client invia una richiesta al server e il filtro la intercetta 2) Il filtro richiama il metodo chain.dofilter 3) Il webcomponent corrispondente risponde, generando la risposta. 4) La risposta viene intercetta dal filtro e viene processata 5) La risposta eventualmente modificata viene restituita al client Come potete vedere la possibilità di utilizzo dei filtri è amplissima basta che pensiate a tutte le cose che si potrebbero fare potendo modificare una risposta http o potendo ricavare informazioni da una richiesta http. In particolare l applicazione pratica che noi vedremo sarà un esempio di filtro di autenticazione, ossia il nostro filtro fornirà un forma di protezione da tentativi di accesso non autorizzato a certe risorse sul webserver. Altri esempi di possibile filtro: una filtro che effettua del logging con informazioni riguardo al client oppure ai tempi di elaborazione delle pagine oppure un filtro di compressione dati. Prima di andare a vedere l applicazione pratica tentiamo di dare un sguardo più da vicino ai filtri. DENTRO AI FILTRI Un filtro per essere considerato tale deve implementare l interfaccia javax.servlet.filter e di conseguenza i tre metodi ad essa associati: void init(filterconfig config): in un certo senso possiamo paragonarlo al metodo init() delle servlet. Questo metodo viene invocato dal web container (tipicamente si usa Tomcat come servlet engine) prima che il filtro possa cominciare qualsiasi tipo di operazione di filtraggio e di conseguenza viene chiamato prima del metodo dofilter. Nel metodo init() del filtro è possibile svolgere eventuali inizializzazioni di variabili o parametri d ambiente. void dofilter(servletrequest request, ServletResponse response, FilterChain chain) : questo metodo esegue tutte le operazioni necessarie. In pratica viene invocato ogni qualvolta un client fa una richiesta e quindi si hanno una coppia request/response. void destroy(): come già detto per il metodo init anche qui possiamo trovare una corrispondenza col metodo destroy delle servlet. Questo metodo viene invocato alla fine del ciclo di vita del filtro ossia quando il servlet container decide di rendere inutilizzabile l istanza del filtro o quando non ci sono più thread in esecuzione sul metodo dofilter. In questo metodo può essere inserito anche del codice per liberare risorse precedentemente impegnate e ora non più utilizzate per fare un esempio banale delle connessioni ad un database o dei file ancora aperti. Insomma il metodo destroy viene invocato in fase di chiusura del servlet container o della webapplication. Due parole in più sul metodo dofilter() il più importante/interessante di un filtro. Come si può notare dalla firma del metodo abbiamo tre argomenti. 1. ServletRequest request: è un interfaccia che definisce un oggetto generico di tipo richiesta. Tipicamente viene passata una richiesta http di conseguenza un oggetto che implementi l interfaccia javax.servlet.httpservletrequest. Quest ultima è una sottointerfaccia che estende l interfaccia javax.servlet.servletrequest: è per così dire una specializzazione dell oggetto generale di richiesta per il protocollo http. 2. ServletResponse response: vale lo stesso discorso fatto sopra per la request, solo che qui parliamo di interfaccia javax.servlet.servletresponse e di sottointerfaccia javax.servlet.httpservletresponse. 3. FilterChain chain: qui parliamo dell interfaccia javax.servlet.filterchain. In questo caso abbiamo a che fare con un oggetto creato appositamente dal servlet container per fare in modo che il programmatore possa facilmente passare il controllo sugli oggetti richiesta e risposta al prossimo filtro nella catena di filtri. Il bello dei filtri è quello di poter tranquillamente costruire una catena di filtri, ognuno dei quali esegue una parte di lavoro. Ad esempio: un filtro che fa del logging, seguito da un filtro che raccoglie informazioni sulla richiesta da parte del client (browser, os, provenienza,etc.) e infine un filtro di autenticazione che si preoccupa di controllare che il client possa effettivamente accedere alla risorsa richiesta. Quando un filtro ha terminato il proprio lavoro di preprocessing può passare il controllo al filtro successivo semplicemente chiamando il metodo FilterChain.doFilter(). Nel caso non ci siano più filtri allora viene chiamata la risorsa specificata dalla richiesta. NOTA: tutti e tre gli argomenti sono interfacce, quindi non classi e vere istanze di oggetti. E compito del servlet container passare degli oggetti corrispondenti (costruiti ad arte ) che implementino le relative interfacce. Se si vanno infatti a vedere le servlet API non si troveranno classi che implementino un vero oggetto richiesta o risposta. Le classi wrapper sono un eccezione, ma in realtà esse non sono veri oggetti richiesta o risposta. 2

3 CONFIGURAZIONE DEI FILTRI Poiché i filtri possiamo considerarli alla stregua delle servlet, anche loro devono essere configurati in maniera opportuna all interno del file web.xml per funzionare correttamente nella web application. Abbiamo già accennato all inizio di come vedremo un esempio pratico di filtro di autenticazione. Il nostro filtro si chiamerà LoginFilter: vediamo quindi come configurarlo. Parte di un ipotetico file web.xml <?xml version="1.0" encoding="iso "?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <filter> <filter-class>it.webtraffic.filters.loginfilter</filter-class> <init-param> <param-name>loginpage</param-name> <param-value>/index.htm</param-value> </init-param> </filter> <filter-mapping> <url-pattern>/statistiche/*</url-pattern> </filter-mapping> <filter-mapping> <url-pattern>/admin/*</url-pattern> </filter-mapping> </web-app> Osservazioni: 1. Le dichiarazioni dei filtri vanno fatte prima delle dichiarazioni delle servlet. 2. Le dichiarazioni dei filtri vanno fatte nell ordine che con cui si vuole costruire la catena di filtri. 3. I tag <filter></filter> permettono di dichiarare i filtri. 4. I tag <filter-name></filter-name> permettono di definire il nome-identificatore del filtro. 5. I tag <filter-class></filter-class> permettono di indicare la classe filtro. 6. I tag <init-param></init-param> e gli altri tag interni servono per specificare parametri di inizializzazione del filtro (come avviene per le servlet) che possono essere recuperate ad esempio nel metodo init(). 7. I tag <filter-mapping></filter-mapping> e gli altri tag interni servono per specificare quando un filtro deve essere invocato ossia in base a quali richieste. In particolare si specifica il nome del filtro che deve essere invocato e l url-pattern relativo. Nel nostro caso il filtro entra in azione quando arrivano richieste del tipo /admin/* o /statistiche/*. Per fare in maniera che il filtro entri in azione sempre si può specificare il pattern /*. Per farlo funzionare solo con particolari estensioni di file basta racchiudere tra i tag <url-pattern></url-pattern> l estensione dei file: ad esempio *.php o *.htm. 8. Possono essere specificati un numero arbitrario di mapping per i filtri (così come per le servlet). Bene, dopo questa breve ma esaustiva introduzione ai filtri vediamo un applicazione reale, in maniera da renderci contro delle potenzialità di questo meccanismo. IMPLEMENTAZIONE DI UN FILTRO DI AUTENTICAZIONE Progettare un filtro di autenticazione significa progettare un meccanismo che fornisca una forma di protezione di dati considerati sensibili e ai quali si vuole che accedano soltanto particolari categorie di utenti. Nella fattispecie (anche facendo riferimento all estratto di web.xml visto sopra) vogliamo che soltanto gli utenti privilegiati possano accedere a certi percorsi. Il codice java che vedrete qui sotto è stato scritto dal sottoscritto nell ambito di un progetto di laboratorio di reti che prevedeva lo sviluppo di un sistema di statistiche per l accesso ai siti web sul modello di shynistat. Il progetto è stato svolto assieme ad un altro mio collega all università, e mentre lui si occupava della parte di statistiche (elaborazione dei dati raccolti e generazione grafici) io mi sono occupato tra l altro anche del meccanismo di login/autenticazione. 3

4 Il codice java per quanto possibile rispecchierà l originale utilizzato nell applicazione web completa, e quando necessario aggiungerò commenti per aiutare la comprensione del funzionamento del filtro. /* * LoginFilter.java * Classe filtro che controlla i permessi di un client per l accesso * a determinati percorsi sul webserver. * Parte integrante dell applicazione web WEB TRAFFIC ANALYZER. */ package it.webtraffic.filters; import javax.servlet.*; import javax.servlet.http.*; import java.io.ioexception; import java.io.printwriter; import it.webtraffic.beans.admin; public class LoginFilter implements Filter { private String loginpage; public void dofilter(servletrequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { //faccio un downcast della richiesta e della risposta. HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; //recupero la sessione del client che ha effettuato la richiesta HttpSession session = req.getsession(); //tento di recuperare il bean Admin: //si tratta di un bean contenente le informazioni riguardanti l amministratore Admin administrator = (Admin) session.getattribute("admin"); if (administrator == null) { //un utente generico ha tentato di accedere ai percorsi protetti response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<head>"); out.println("<meta http-equiv=\"refresh\" content=\"2; URL=" + loginpage +"\">"); out.println("<div align='center'><h3>effettuare IL LOGIN PRIMA DI ACCEDERE AL PERCORSO SPECIFICATO...<br><br>"); out.println("redirezione alla pagina di login in corso</h3></div>"); out.close(); //ora controllo se si tratta di un amministratore semplice o avanzato. //gli amministratori avanzati hanno la possibilità anche di accedere anche ai percorsi di tipo /admin/* //il metodo getifgod() del bean ci consente di capire se si tratta di admin semplice (false) o avanzato (true) else if (req.getrequesturi().indexof("/admin")!= -1 &&!administrator.getifgod()) { //si tratta di un amministratore semplice quindi segnalo l errore. response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<head>"); out.println("<meta http-equiv=\"refresh\" content=\"2; URL=/statistiche/statistiche/home.jsp\">"); out.println("<div align='center'><h3>impossibile ACCEDERE: NON SEI GOD ADMIN...<br><br>"); out.println("redirezione alla pagina di principale in corso</h3></div>"); out.close(); else { //nel caso le credenziali siano verificate inoltro richiesta e risposta all ipotetico prossimo filtro. chain.dofilter(req, res); /** Metodo destroy del filtro. */ public void destroy() { /** Metodo init del filtro. */ public void init(filterconfig filterconfig) throws ServletException{ //tento di recuperare il parametro loginpage che dovrebbe essere specificato nel file web.xml loginpage = "/statistiche" + filterconfig.getinitparameter("loginpage"); //se non ci riesco segnalo l errore if (loginpage == null) throw new ServletException("Init Parameter loginpage mancante: modificare il file web.xml"); 4

5 Come si può vedere il meccanismo di autenticazione implementato è piuttosto semplice ma funzionale e serve a illustrare quanto spiegato sopra. In sostanza il tutto si basa sulla presenza o meno di un attributo di sessione, un bean Admin che contiene informazioni sull eventuale amministratore. Un metodo getifgod() che ritorna un boolean inoltre ci permette di distinguere tra SIMPLE (semplice) e GOD (avanzato) ADMIN. Il grosso del lavoro viene per l appunto svolto all interno del metodo dofilter(). Il metodo destroy() risulta vuoto visto che non c è la necessità di liberare risorse, mentre nel metodo init() abbiamo tentato di recuperare il parametro di inizializzazione loginpage. CONCLUSIONI Questo è solo un esempio di come impiegare un semplice/potente meccanismo quali i filtri all interno di una web application, ora a voi divertirvi a crearne di vostri. Spero che quello che ho spiegato oggi possa avervi aiutato a scoprire un lato delle servlet che non avevate ancora analizzato. Alla prossima allora! RINGRAZIAMENTI: un particolare ringraziamento a Massimiliano Barletta, mio collega all unive col quale ho condiviso l avventura di creare il WEB TRAFFIC ANALYZER. Ci siamo aiutati a vicenda nella realizzazione del progetto che alla fine ci ha permesso di imparare molto sulle tecnologie servlet e jsp, e ci siamo incoraggiati moralmente a vicenda quando le cose sembravano non andare per il verso giusto quindi GRAZIE E AL PROSSIMO PROGETTO! NOTE AL DOCUMENTO Fonti bibliografiche: - Jason Hunter e William Crawford JAVA SERVLET PROGRAMMING seconda edizione aggiornata. - WEB TRAFFIC ANALYZER Progetto di Laboratorio di Reti anno accademico 2002/ Enterprise Java TM Technologies Tech Tips for September 19, 2002 LINK: Autore del documento: sego Permessi sul documento: l uso di questo documento è a puro scopo informativo e non a fini di lucro. Il contenuto del documento può essere usato liberamente. Nel caso utilizziate o pubblichiate sul vostro sito questo documento siete pregati di lasciarlo integro o di lasciare almeno un riferimento all autore originale. Informazioni di carattere generale: qualsiasi suggerimento o critica costruttiva è ben accetto. Se avete idee per migliorare il documento inviatemi pure una mail. La segnalazione di errori o disattenzioni è altresì ben accetta. sego(owner/webmaster of the-skulls.com) indirizzo di posta elettronica: sito web di riferimento: 5

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

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

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

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

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

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

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

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

Server-side Programming: Java servlets Parte II

Server-side Programming: Java servlets Parte II Corso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni Corso di Reti di Applicazioni Telematiche a.a. 2009-2010 Server-side Programming:

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 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

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Struttura dell Applicazione versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

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

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Http con java, URL Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

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

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

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB.

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Web Server TOMCAT Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

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

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

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Ivan Scagnetto Dipartimento di Matematica e Informatica http://www.dimi.uniud.it/scagnett scagnett@dimi.uniud.it Laboratorio di Tecnologie Lato

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti 13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

Osservazioni. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2005/06-1

Osservazioni. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2005/06-1 Osservazioni Nell esempio della precedente lezione del contatore di accessi persistente il nome del file in cui memorizzare il numero di hit ed il valore iniziale del contatore sono codificati direttamente

Dettagli

Spring WS Sviluppare WebService in Java

Spring WS Sviluppare WebService in Java Spring WS Sviluppare WebService in Java 1.1 Introduzione Nell ambito della programmazione Java è particolarmente utile avere una certa familiarità con i WebService e la tecnologia che li supporta. In particolare

Dettagli

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

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

Un contatore di accessi

Un contatore di accessi Un contatore di accessi Scriviamo una servlet che conta il numero di accessi e lo visualizza. Sfruttiamo il fatto che Tomcat, quando riceve la richiesta di una servlet, crea un istanza della classe corrispondente.

Dettagli

Corso di Applicazioni Telematiche

Corso di Applicazioni Telematiche Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.12 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Una Servlet è un componente software scritto in Java,

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

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

Capitolo 7. Sviluppi futuri. 7.1 Generazione automatica di pagine WML

Capitolo 7. Sviluppi futuri. 7.1 Generazione automatica di pagine WML Capitolo 7 Sviluppi futuri 7.1 Generazione automatica di pagine WML Con l avvento della tecnologia WAP/WML abbiamo constatato la necessità di avere a disposizione uno strumento che consenta, così come

Dettagli

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Ivan Scagnetto Dipartimento di Matematica e Informatica http://www.dimi.uniud.it/scagnett scagnett@dimi.uniud.it Laboratorio di Tecnologie Lato

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

Framework di Middleware. per Architetture Enterprise

Framework di Middleware. per Architetture Enterprise Framework di Middleware per Architetture Enterprise Corso di Ingegneria del Software A.A.2011-2012 Un po di storia 1998: Sun Microsystem comprende l importanza del World Wide Web come possibile interfaccia

Dettagli

1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages

1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages 1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages Le JSP DynPages sono un utile strumento, fornito da SAP Netweaver, per una gestione più evoluta di event handling e session

Dettagli

Introduzione al linguaggio Java: Servlet e JSP

Introduzione al linguaggio Java: Servlet e JSP Introduzione al linguaggio Java: Servlet e JSP Corso di Gestione della Conoscenza d Impresa A. A. 2006/2007 Dipartimento di Informatica Università degli Studi di Bari 1 Servlet e JSP: il contesto Un applicazione

Dettagli

APPENDICE A Servlet e Java Server Page

APPENDICE A Servlet e Java Server Page APPENDICE A Servlet e Java Server Page A.1 Cosa è una Servlet e come funziona Una servlet è un particolare tipo di applicazione Java, in grado di essere eseguita all'interno di un web server e di estenderne

Dettagli

Java Server Pages. Corso di Applicazioni Telematiche. A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico

Java Server Pages. Corso di Applicazioni Telematiche. A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico Java Server Pages Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Java Server Pages (JSP) Java Server

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 8 Java Server Pages Java Server Pages è essenzialmente un modo più comodo per il programmatore dell applicazione web di scrivere una Servlet.

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

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

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. **********

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Prime nozioni: Tag e prima pagina, continuazione. Nota bene, al fine di avere anche

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

INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA

INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA Questa vuole essere una breve tutorial su come installare Joomla su uno spazio Web gratuito, in particolare faremo riferimento ai sottodomini gratuitamente

Dettagli

Porting Su Hostingjava

Porting Su Hostingjava Porting Su Hostingjava Consigli per il caricamento di una propria applicazione su hostingjava Il porting è una operazione con cui un programma, sviluppato originariamente per una piattaforma, viene"ritoccato"

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Primi passi con Apache Tomcat. L application server dell Apache group

Primi passi con Apache Tomcat. L application server dell Apache group Primi passi con Apache Tomcat L application server dell Apache group 2 J2EE Direttive Sun Microsystem Che cos è un application server EJB Maggiori application server open source 3 Tomcat Open Source e

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento

Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento Sara che ho bevuto tre bicchieri di Barbera d Asti Cascina Ferro (scusate la soletta pubblicitaria), sara che arrivo da una

Dettagli

Protocolli e architetture per WIS

Protocolli e architetture per WIS Protocolli e architetture per WIS Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di informazioni e servizi Le architetture moderne dei WIS

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 it.unibas.pinco versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

RMI Remote Method Invocation

RMI Remote Method Invocation RMI Remote Method Invocation [Pagina intenzionalmente vuota] (1 12 2004) slide 4:1/18 (p.106) Un applicazione RMI è un applicazione distribuita ad oggetti. Applicazione RMI tipica, strutturata in: server:

Dettagli

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO 1 Installazione e requisiti per il corretto funzionamento del sito: L istallazione è possibile sui più diffusi sistemi operativi. Il pacchetto

Dettagli

10 - Programmare con gli Array

10 - Programmare con gli Array 10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

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

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 6 Servlet Servlet: classi java che estendono le funzionalità di un server Web generando dinamicamente le pagine Web. Riferimento: http://java.sun.com/products/servlets

Dettagli

Laboratorio di Basi di dati

Laboratorio di Basi di dati Laboratorio di Basi di dati Docente: Alberto Belussi Lezione 6 Servlet Servlet: classi java che estendono le funzionalità di un server Web generando dinamicamente le pagine Web. Riferimento: http://www.oracle.com/technetwork/java/javaee/servlet/index.html

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

PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse

PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse Relatore: Matteo Baccan matteo@baccan.it Data: Roma 24/1/2009 Target: Programmatori PHP, Java e semplici curiosi Difficoltà:

Dettagli

Tutorial web Application

Tutorial web Application Tutorial web Application Installazione della JDK: Java viene distribuito con la jdk e il jre acronimi di Java Development Kit e Java Runtime Environment rispettivamente. La jdk è l'ambiente di sviluppo

Dettagli

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito LEZIONE 3 Il pannello di amministrazione di Drupal, configurazione del sito Figura 12 pannello di controllo di Drupal il back-end Come già descritto nella lezione precedente il pannello di amministrazione

Dettagli

Laboratorio di reti II: Servlet

Laboratorio di reti II: Servlet Laboratorio di reti II: Servlet Stefano Brocchi brocchi@dsi.unifi.it 16 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Servlet 16 marzo, 2009 1 / 34 Le servlet Una servlet è una classe Java eseguita

Dettagli

Progetto LiberA. Studente/Relatore: Antonio Zambito Matricola: 124/1032 CdL: Informatica (0124) Prof.: Raffaele Montella

Progetto LiberA. Studente/Relatore: Antonio Zambito Matricola: 124/1032 CdL: Informatica (0124) Prof.: Raffaele Montella Progetto LiberA L implementazione di un applicazione Web (PHP, CSS3, HTML5, MYSQL, JAVASCRIPT) per facilitare la gestione di un associazione culturale, contestualmente un associazione di danza. Nasce dalla

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

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008 Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 6 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Cercare è per metà trovare

Cercare è per metà trovare Introduzione Cercare è per metà trovare Cercare su Internet Un Web nella Rete Struttura del libro I n t r o d u z i o n e La prima edizione del libro che avete tra le mani nasceva nel 2005. Si trattava

Dettagli

JUG Ancona Italy. Andrea Del Bene. Jug Marche

JUG Ancona Italy. Andrea Del Bene. Jug Marche JUG Ancona Italy SpringMVC AndreaDelBene JugMarche Cos'èSpringMVC? Spring MVC è il sotto-framework di Spring che permetti di servirsi del Framework Spring per realizzare applicazioni web. Possiamo quindi

Dettagli

PHP e MySQL. Guida scaricata da www.webstyling.it

PHP e MySQL. Guida scaricata da www.webstyling.it Home -> Manuali & Tutorials -> Guida PHP PHP e MySQL E' possibile realizzare delle applicazioni in php appoggiandosi ad un database, quale ad esempio MySQL. Con le novità introdotte ai tempi di MySQL 4.1

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

GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT

GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT Con questa guida non voglio insegnarvi a inserire degli articoli su un blog, ma solo mostrarvi come faccio io, quindi iniziamo: Fate il Login inserendo

Dettagli

Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti:

Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti: Javadoc Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti: /* commenti */ // commenti /** commenti documentazione */ Questi ultimi generano automaticamente

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Introduzione a Servlet e Struts 2 Ing. Giuseppe D'Aquì 1 Testi Consigliati Java Enterprise in a nutshell, 3 rd edition (O'Reilly) Struts 2 in Action Brown, Davis, Stanlick

Dettagli

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it Pagina 1 di 6 Joomla! 2.5:Utenti e permessi Da Il wiki di Joomla.it. Traduzione (http://cocoate.com/it/j25it/utenti) dal libro Joomla! 2.5 - Beginner's Guide (http://cocoate.com/j25/users-permissions)

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

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

Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali?

Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali? Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali? Riprendiamo il discorso, introducendo la tag Body e iniziando

Dettagli

Realizzazione di una chat su protocollo HTTP

Realizzazione di una chat su protocollo HTTP Università di Pisa Università di Pisa Percorsi Abilitanti Speciali (PAS) Percorsi Abilitanti Speciali (PAS) Realizzazione di una chat su protocollo HTTP Realizzazione di una chat su protocollo HTTP Feo

Dettagli

Innanzitutto andiamo sul sito http://www.dropbox.com/ ed eseguiamo il download del programma cliccando su Download Dropbox.

Innanzitutto andiamo sul sito http://www.dropbox.com/ ed eseguiamo il download del programma cliccando su Download Dropbox. Oggi parlerò di qualcosa che ha a che fare relativamente con la tecnica fotografica, ma che ci può dare una mano nella gestione dei nostri archivi digitali, soprattutto nel rapporto professionale con altre

Dettagli

Corso Android Corso Online Sviluppo su Cellulari con Android

Corso Android Corso Online Sviluppo su Cellulari con Android Corso Android Corso Online Sviluppo su Cellulari con Android Accademia Futuro info@accademiafuturo.it Programma Generale del Corso di Sviluppo su Cellulari con Android Programma Base Modulo Uno - Programmazione

Dettagli

Ottava Esercitazione. introduzione ai thread java mutua esclusione

Ottava Esercitazione. introduzione ai thread java mutua esclusione Ottava Esercitazione introduzione ai thread java mutua esclusione Agenda Esempio 1 Concorrenza in Java: creazione ed attivazione di thread concorrenti. Esercizio 2 da svolgere Concorrenza in Java: sincronizzazione

Dettagli

Strutture di accesso ai dati

Strutture di accesso ai dati Strutture di accesso ai dati 1 A L B E R T O B E L U S S I P A R T E I I A N N O A C C A D E M I C O 2 0 1 0-2 0 1 1 Gestore dei metodi di accesso 2 E il modulo del DBMS che trasforma il piano di esecuzione

Dettagli

1 EJB e Portal Component Object http://desvino.altervista.org

1 EJB e Portal Component Object http://desvino.altervista.org 1 EJB e Portal Component Object http://desvino.altervista.org In questo tutorial studiamo come sfruttare la tecnologia EJB, Enterprise JavaBean, all interno del SAP Netweaver Portal. In breve, EJB è un

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

Tomcat struttura delle directory

Tomcat struttura delle directory Tomcat struttura delle directory $CATALINA_HOME (oppure $TOMCAT_HOME): rappresenta la directory radice dell installazione di Tomcat e contiene le seguenti directory: bin common (lib nelle versioni più

Dettagli

1. LA MOTIVAZIONE. Imparare è una necessità umana

1. LA MOTIVAZIONE. Imparare è una necessità umana 1. LA MOTIVAZIONE Imparare è una necessità umana La parola studiare spesso ha un retrogusto amaro e richiama alla memoria lunghe ore passate a ripassare i vocaboli di latino o a fare dei calcoli dei quali

Dettagli

Accesso Web a Data Base

Accesso Web a Data Base Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Accesso Web a Data Base Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei -

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

CONOSCI MEGLIO IL WEB.

CONOSCI MEGLIO IL WEB. CONOSCI MEGLIO IL WEB. CONOSCI MEGLIO IL WEB. di Stefania Pompigna Il mondo virtuale offre infinite opportunità ed infinite insidie. E meglio scoprirle, capirle ed impararle. GUIDA SULLA TORTUOSA STRADA

Dettagli

Tipi fondamentali di documenti web

Tipi fondamentali di documenti web Tipi fondamentali di documenti web Statici. File associati al web server il cui contenuto non cambia. Tutte le richieste di accesso conducano alla visualizzazione della stessa informazione. Dinamici. Non

Dettagli

UnicastRemoteObject. Massimo Merro Programmazione di Rete 103 / 124

UnicastRemoteObject. Massimo Merro Programmazione di Rete 103 / 124 UnicastRemoteObject Java RMI fornisce diverse classi base per definire server remoti: UnicastRemoteObject < RemoteServer < RemoteObject dove A < B significa che A è una sottoclasse di B. UnicastRemotObject

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com 15.03.2006 Ver. 1.0 Scarica la versione pdf ( MBytes) Nessuno si spaventi! Non voglio fare né un manuale

Dettagli

Modulo 4: Ereditarietà, interfacce e clonazione

Modulo 4: Ereditarietà, interfacce e clonazione Modulo 4: Ereditarietà, interfacce e clonazione Argomenti Trattati: Classi, Superclassi e Sottoclassi Ereditarietà Ereditarietà ed Attributi Privati Override super Ereditarietà e Costruttori Polimorfismo

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

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

Informativa privacy. per il sito MyLyconet. Versione dati: 3.00 (05.2014) Lyoness Group AG Gürtelturmplatz 1 8020 Graz

Informativa privacy. per il sito MyLyconet. Versione dati: 3.00 (05.2014) Lyoness Group AG Gürtelturmplatz 1 8020 Graz Informativa privacy per il sito MyLyconet Versione dati: 3.00 (05.2014) La protezione dei Vostri dati personali è importante sia per Lyoness che per il proprietario del sito web MyLyconet. Le seguenti

Dettagli

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

UNIVERSITÀ DEGLI STUDI DI TORINO FACOLTÀ DI SCIENZE DELLA FORMAZIONE CORSO DI STUDIO TRIENNALE IN SCIENZE DELL EDUCAZIONE

UNIVERSITÀ DEGLI STUDI DI TORINO FACOLTÀ DI SCIENZE DELLA FORMAZIONE CORSO DI STUDIO TRIENNALE IN SCIENZE DELL EDUCAZIONE UNIVERSITÀ DEGLI STUDI DI TORINO FACOLTÀ DI SCIENZE DELLA FORMAZIONE CORSO DI STUDIO TRIENNALE IN SCIENZE DELL EDUCAZIONE Curriculum: Esperto di formazione a distanza DISSERTAZIONE FINALE Raccontami :

Dettagli

Central Authen:ca:on Service

Central Authen:ca:on Service Central Authen:ca:on Service 9 maggio 2009 proprietà riservata ws webscience srl 2008 1 Introduzione CAS: Central Authen:ca:on Service Sistema di auten:cazione centralizzato per l'implementazione del Single

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli