Da Println a Spring. Rinaldo Bonazzo Sardinia Point Srl

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Da Println a Spring. Rinaldo Bonazzo Sardinia Point Srl"

Transcript

1 Da Println a Spring Rinaldo Bonazzo (rbonazzo@sardiniapoint.it) Sardinia Point Srl

2 Chi siamo (1) Sardinia Point S.r.l. sviluppa strumenti informatici destinati alle attività turistiche e produce contenuti finalizzati alla promozione turistica della Sardegna.

3

4 Chi siamo (2) Dal 1999 pubblica sul web il sito punto di riferimento per il turismo in Sardegna (10000 pagine on line, 4000 visitatori unici al giorno)

5 Il progetto rent sardinia Dal 2000 gestisce il sito attraverso il quale l agenzia immobiliare E-Sardinia S.r.l. - leader nelle locazioni turistiche in Sardegna - propone il suo catalogo.

6

7 Cronologia del progetto servlet con utilizzo intensivo di println (windows Nt 4.0, jrun 3.0 mssqlserver 7.0) 2003 utilizzo di template con xml 2004 utilizzo di jsp (jrun 4.0) 2005 struts, hibernate (windows 2003 server, jboss, MySql) Spring, Ibatis, Dwr(Ajax), json, prototypes (Web2.0) Web Services...

8 Println(1) <?xml version="1.0" encoding="utf-8"?> <web-app version="2.4" xmlns=" xmlns:xsi=" xsi:schemalocation=" <servlet> <servlet-name>opscontenuto</servlet-name> <servlet-class>opscontenuto</servlet-class> </servlet>... <servlet-mapping> <servlet-name>opscontenuto</servlet-name> <url-pattern>/servlet/opscontenuto</url-pattern> </servlet-mapping>... </web-app>

9 Println(2) public void doget(httpservletrequest req, HttpServletResponse res) throws ServletException { try { PrintWriter out = res.getwriter(); String html = "";... String contenuto = ""; contenuto += "<form method=get>"; contenuto += "<table>"; contenuto += "<tr><td>"; contenuto += "username:</td><td><input type=text name=pi1><br>"; contenuto += "</td></tr>";... contenuto += "</td><td align=center><input type=submit value=invia><br>"; contenuto += "</td></tr>"; contenuto += "</table>"; contenuto += "</form>"; html = replace(html, "<ONDE_MEDIA>", "<b>benvenuto</b><br>inserisci username e password"); html = replace(html, "<ONDE_CONTENUTO>", contenuto); html = replace(html, "<ONDE_TITOLO>", super.titolo); html = replace(html, "<ONDE_ERRORE>", errori); html = replace(html, "<ONDE_OPS_FORMATO>", super.titolo); out.println(html); } catch (Exception e) { }.. }

10 Struts(1) <struts-config> <form-beans > <form-bean name="loginformbean" type="it.sp.struts.form.loginformbean" /> <form-bean name="nuovoappform" type="it.sp.struts.form.nuovoappform" /> <form-bean name="gestareageoform" type="it.sp.struts.form.gestareageoform" />... </form-beans> <action-mappings > <action forward="/jsp/pages/login.jsp" path="/login" unknown="false" validate="true" /> <action attribute="loginformbean" input="/jsp/pages/login.jsp" name="loginformbean" path="/loginsubmit" scope="request" type="it.sp.struts.action.loginsubmit"> <forward name="success" path="/jsp/pages/loginok.jsp" contextrelative="true" /> </action>... </struts-config>

11 Struts(2) <web-app> <servlet> <servlet-name>action</servlet-name> <servlet-class> org.apache.struts.action.actionservlet </servlet-class> <init-param> <param-name>config</param-name> <param-value>/web-inf/struts-config.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>3</param-value> </init-param> <init-param> <param-name>detail</param-name> <param-value>3</param-value> </init-param> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>... </web-app>

12

13

14 Perchè Spring? - Modulare

15 Spring(1) web.xml <web-app> <display-name>rent Sardinia</display-name> <description>rent Sardinia Web Application</description> <context-param> <param-name>contextconfiglocation</param-name> <param-value>/web-inf/rs2007-servlet.xml</param-value> </context-param> <servlet><servlet-name>context</servlet-name><servletclass>org.springframework.web.context.contextloaderservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet><servlet-name>rs2007</servlet-name><servletclass>org.springframework.web.servlet.dispatcherservlet</servlet-class> <load-on-startup>2</load-on-startup> </servlet> <servlet><servlet-name>dwr-invoker</servlet-name><display-name>dwr Servlet</display-name> <servlet-class>uk.ltd.getahead.dwr.dwrservlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>false</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>rs2007</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> </web-app>

16 Spring(2) rs2007-servlet.xml <beans>... <!-- V I E W R E S O L V E R --> <bean id="viewresolver" class="org.springframework.web.servlet.view.internalresourceviewresolver"> <property name="viewclass" value="org.springframework.web.servlet.view.jstlview"/> <property name="prefix"><value>./web-inf/jsp/layouts/</value></property> <property name="suffix"><value>.jsp</value></property> </bean> <!-- I N T E R C E P T O R S --> <bean id="messagesource" class="org.springframework.context.support.resourcebundlemessagesource"> <property name="basename"><value>messages</value></property> </bean> <bean id="localechangeinterceptor" class="org.springframework.web.servlet.i18n.localechangeinterceptor"> <property name="paramname"><value>lingua</value></property> </bean> <bean id="localeresolver" class="org.springframework.web.servlet.i18n.cookielocaleresolver"/> <bean name="simpleurlmapping" class="org.springframework.web.servlet.handler.simpleurlhandlermapping"> <property name="interceptors"> <list><ref bean="localechangeinterceptor"/></list> </property> <property name="mappings"> <props> <prop key="/listacase.htm">rs2007.listacasecontroller</prop> </props> </property> </bean> </beans>

17 Spring (3) data.xml <beans> <bean id="propertyconfigurer" class="org.springframework.beans.factory.config.propertyplaceholderconfigurer"> <property name="locations"> <list> <value>web-inf/jdbc.properties</value> <value>web-inf/mail.properties</value> <value>web-inf/general.properties</value> </list> </property> </bean> <!-- D A T A S O U R C E --> <bean id="rs2007.datasource" class="org.springframework.jndi.jndiobjectfactorybean" > <property name="jndiname"> <value>java:/cliappdb</value> </property> </bean> <!-- ibatis --> <bean id="rs2007.sqlmapclient" class="org.springframework.orm.ibatis.sqlmapclientfactorybean" > <property name="configlocation" value="web-inf/conf/rs2007-mysql-sqlmapconfig.xml"/> <property name="datasource" ref="rs2007.datasource"/> </bean> <!-- D A O--> <bean id="rs2007.codicirichiestedao" class="it.com.sp.rs2007.dao.impl.sqlmapcodicirichiestedao"> <property name="sqlmapclient"><ref bean="rs2007.sqlmapclient"/></property> <property name="datasource"><ref bean="rs2007.datasource"/></property> </bean> </beans>

18 Spring (4) service.xml <!-- S E R V I C E S --> <bean id="rs2007.codicirichiesteservice" class="it.com.sp.rs2007.service.impl.codicirichiesteservice"> <property name="ricdao"> <ref bean="rs2007.codicirichiestedao" /> </property> </bean> <bean id="sottolocalitaservice" class="it.com.sp.rs2007.service.impl.sottolocalitaservice"> <property name="sottolocdao"> <ref bean="rs2007.sottolocdao" /> </property> </bean> <bean id="rs2007.dettcasaservice" class="it.com.sp.rs2007.service.impl.dettcasaservice"> <property name="dettcasadao"> <ref bean="rs2007.dettcasadao" /> </property> </bean>

19 Spring(5) web.xml <beans> <!-- V A L I D A Z I O N E --> <bean id="rs2007.utentivalidator" class="it.com.sp.rs2007.validator.utentivalidator"> <property name="utentiservice"> <ref bean="rs2007.utentiservice" /> </property> </bean> <!-- H A N D L E R M A P P I N G S (M U L T I A C T I O N) --> <bean id="mappingactions" class="org.springframework.web.servlet.mvc.multiaction.parametermethodnameresolver"> <property name="paramname"> <value>action</value> </property> </bean> <!-- DWR Controller --> <bean id="localitamanager" class="it.com.sp.rs2007.controller.mvc.localitamanager" singleton="false"> <property name="localitaservice"> <ref bean="localitaservice" /> </property> </bean> </beans>

20 I Risultati(1)

21 I Risultati(2)

22 I Risultati (3)

23 I Risultati (4)

24 I Risultati (5)

25 I Risultati (6)

26 I Risultati (7)

27 Riferimenti e Ringraziamenti (gli articoli di Mario Cassari) Massimiliano Dessi per la consulenza e la disponibilità Pro Spring (Apress) Expert Spring MVC and Web Flow (Apress)...

28 Domande Grazie per l'attenzione contatti:

Rinaldo Bonazzo Rinaldo Bonazzo, japs incontra Spring Cagliari, 14 Giugno 2008

Rinaldo Bonazzo   Rinaldo Bonazzo, japs incontra Spring Cagliari, 14 Giugno 2008 LjAPS incontra Spring o Rinaldo Bonazzo http://www.jroller.com/rbonazzo/ 1 Chi sono Responsabile informatico di Sardinia Point Srl (www.sardiniapoint.it) società che: sviluppa strumenti informatici destinati

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

Ciclo di vita di una Servlet

Ciclo di vita di una Servlet Ciclo di vita di una Servlet Non caricata. Prima richiesta: Caricata: il file.class viene caricato in memoria centrale. Inizializzata: viene eseguito il metodo init(). In servizio: risponde alle richieste

Dettagli

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

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-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

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

Tito Flagella - Introduzione alla programmazione di Servlet

Tito Flagella - Introduzione alla programmazione di Servlet Introduzione alla programmazione di Servlet Caratteristiche di base Estensioni del server scritte in Java utilizzando la Servlet API La Servlet API è diventata un estensione standard di Java, dalla versione

Dettagli

Servlet: approfondimenti

Servlet: approfondimenti Servlet: approfondimenti Java Servlet: una nozione naturale di stato ed il metodo init() Il ciclo di vita di una servlet: metodi init() e destroy() Java Servlet: parametri nel file web.xml Le Servlet ed

Dettagli

Stateless Session Bean

Stateless Session Bean Stateless Session Bean 1 Esempio Stateless Session bean per il calcolo della somma di due numeri reali 2 Struttura del sistema calcolo della somma di due numeri reali Sum implementato con uno stateless

Dettagli

Stateless Session Bean

Stateless Session Bean Esempio Stateless Session Bean Stateless Session bean per il calcolo della somma di due numeri reali 1 2 Struttura del sistema Creazione progetto calcolo della somma di due numeri reali Sum implementato

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

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

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

Osservazioni. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-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

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Spring (2) Ing. Giuseppe D'Aquì Testi Consigliati Beginning Spring 2 (Apress) Sul sito è possibile scaricare, tra gli extra, il codice sorgente e il capitolo 1 Spring Reference

Dettagli

Java Servlet. Corso di Applicazioni Telematiche. A.A Lezione n.10 Prof. Roberto Canonico

Java Servlet. Corso di Applicazioni Telematiche. A.A Lezione n.10 Prof. Roberto Canonico Java Servlet Corso di Applicazioni Telematiche A.A. 2005-06 Lezione n.10 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Cos è una Servlet? Una Servlet è un componente

Dettagli

Container-Managed Persistence Entity Bean

Container-Managed Persistence Entity Bean CMP Entity Bean 1 Container-Managed Persistence Entity Bean gestione item (implementato come CMP entity-bean) nota: normalmente gli Entity Bean interagiscono con i Session Bean, per semplicità in questo

Dettagli

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria. Tecnologie Web T. Esercitazione opzionale Spring MVC

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria. Tecnologie Web T. Esercitazione opzionale Spring MVC Alma Mater Studiorum Università di Bologna Scuola di Ingegneria Tecnologie Web T Esercitazione opzionale Spring MVC Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica: L.10.opt.SpringMVC.pdf

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

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

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 opzionale Spring MVC

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

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

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

Spring MVC e. Sassari, 21 maggio 2011 Spring Meeting 1/25. Ivan Ricotti - elabor sc

Spring MVC e. Sassari, 21 maggio 2011 Spring Meeting 1/25. Ivan Ricotti - elabor sc Spring MVC e 1/25 Lo stack tecnologico di Abbuydda Spring 2.5.6 Spring MVC Spring Security 2.0.4 Spring JDBC Spring Modules EhCache Paypal itext Servlet Container: Apache Tomcat 6 DBMS: MySQL Direct Web

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

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

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

Programmazione Java Avanzata. MVC Model, View,, Controller. Ing. Gianluca Caminiti

Programmazione Java Avanzata. MVC Model, View,, Controller. Ing. Gianluca Caminiti Programmazione Java Avanzata MVC Model, View,, Controller Ing. Gianluca Caminiti Uso di JSP: complessità crescente Invocare codice Java direttamente. Posizionare tutto il codice Java in una pagina JSP

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

RESTful Services. Sistemi Informativi Aziendali A.A. 2012/2013

RESTful Services. Sistemi Informativi Aziendali A.A. 2012/2013 RESTful Services Summary Foundations REST in Java Foundations REST Representational State Transfer Firstly defined by Roy Fielding (2000) Architectural Styles and the Design of Network-based Software Architectures

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

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

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

Servlet e JDBC. Programmazione in Rete e Laboratorio

Servlet e JDBC. Programmazione in Rete e Laboratorio 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 baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Spring & Mule. Andrea Bozzoni

Spring & Mule. Andrea Bozzoni Spring & Mule Andrea Bozzoni andrea.bozzoni@gmail.com 1 Contenuti 1 - Panoramica su un ESB 2 - Introduzione a Mule 3 - Integrazione tra Spring & Mule 3.1 - Spring come component Factory 3.2 - Configurare

Dettagli

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

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. 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 baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

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

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-1

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-1 Tomcat E uno dei servlet engine più diffusi. Può funzionare sia come prodotto stand-alone, sia come modulo del web server Apache. Disponibile gratuitamente (per molti sistemi operativi tra cui Linux, Windows,

Dettagli

Progetto Jug4Tenda. WORK IN PROGRESS di Andrea Del Bene

Progetto Jug4Tenda. WORK IN PROGRESS di Andrea Del Bene Indice generale Progetto Jug4Tenda WORK IN PROGRESS di Andrea Del Bene Progetto Jug4Tenda...1 Nota...2 1Configurazione ambiente di lavoro ed esecuzione del progetto...3 1.1Requisiti software...3 1.1.1Installazione

Dettagli

JDBC: breve riepilogo (1)

JDBC: breve riepilogo (1) Laboratorio di Basi di Dati / Basi di Dati per Bioinformaticai Docenti: Alberto Belussi e Carlo Combi Lezione 7 JDBC: breve riepilogo (1) L interfaccia JDBC è contenuta nei package java.sql e javax.sql.

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web con Servlet e JSP: Concetti Avanzati G. Mecca mecca@unibas.it Università della Basilicata Applicazioni Web J2EE >> Sommario Concetti Avanzati Preliminari

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

Antonio d Acierno 13/01/2006

Antonio d Acierno 13/01/2006 Introduzione alle Servlet Corso di Sistemi Web e Basi Dati Prof. Antonio d Acierno Servlet Alternativa Java ai CGI-BIN Classi java che estendono le funzionalità di un server Web generando dinamicamente

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

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Altri Componenti versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it

Dettagli

Portlet JSR168/286 Sassari, 21 Maggio 2011

Portlet JSR168/286 Sassari, 21 Maggio 2011 Portlet JSR168/286 Sassari, 21 Maggio 2011 Agenda 1. JSR168 2. JSR286 3. Spring MVC Portlet 4. Esempio pra?co 2 Portale Porta di accesso unica a un insieme di applicazioni, da5 e servizi. Portale Applicazioni

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

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 MVC versione 2 Jsp (NetBeans)

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

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 Struts versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Laboratorio di Basi di Dati. Docenti: Alberto Belussi Lezione 7

Laboratorio di Basi di Dati. Docenti: Alberto Belussi Lezione 7 Laboratorio di Basi di Dati Docenti: Alberto Belussi Lezione 7 JDBC: breve riepilogo (1) L interfaccia JDBC è contenuta nei package java.sql e javax.sql. Le classi più utilizzate sono: Connection: collegamento

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

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

Laboratorio di Programmazione di Rete

Laboratorio di Programmazione di Rete Laboratorio di Programmazione di Rete Lezione del 22 Marzo 2010 Docente: Novella Bartolini Ricevimento: Mercoledì ore 12:00-14:00 Via Salaria 113, terzo piano, stanza 309 Email: bartolini@di.uniroma1.it

Dettagli

Capitolo 7. Soluzione: <P align= center > Form di invio nome e cognome </P> <FORM action= nomecognome.exe method= post >

Capitolo 7. Soluzione: <P align= center > Form di invio nome e cognome </P> <FORM action= nomecognome.exe method= post > Capitolo 7 Esercizio 7.1 Commentare le caratteristiche di HTTP come protocollo client-server, evidenziando gli aspetti differenti rispetto ai protocolli client-server tradizionali. La caratteristica che

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

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

Struttura del compito d esame ed esempio

Struttura del compito d esame ed esempio Struttura del compito d esame ed esempio 1 Struttura del compito Il compito d esame è tipicamente composto da 2 esercizi Esercizio sulla programmazione client-side (Javascript e Ajax) Esercizio sulla programmazione

Dettagli

Laboratorio di Basi di Dati e Web. Docente: Alberto Belussi

Laboratorio di Basi di Dati e Web. Docente: Alberto Belussi Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 7 JDBC: breve riepilogo (1) L interfaccia JDBC è contenuta nei package java.sql e javax.sql. Le classi più utilizzate sono: Connection:

Dettagli

Template Engines. (Velocity)

Template Engines. (Velocity) Template Engines (Velocity) Velocity Progetto Jakarta Maturo e stabile (nuove versioni molto rade) Comunità molto numerosa facile trovare supporto Ispirato al vecchio progetto WebMacro Principio guida:

Dettagli

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

Servlet 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 / 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 2 Documentazione: http://www.oracle.com/technetwork/java/javaee/servlet/index.html L approccio SERVLET richiede l installazione

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

Laboratorio di sistemi Tag personalizzati Jsp [NetBeans] Sezione A

Laboratorio di sistemi Tag personalizzati Jsp [NetBeans] Sezione A Sezione A In NetBeans creiamo una applicazione web nel solito modo, confermando tutte le impostazioni proposte senza alcuna variazione. Per costruire una libreria di tag personalizzata, costruiamo innanzitutto

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

Spring Intro Una panoramica del framework open source. Giovedì 18 febbraio 2016

Spring Intro Una panoramica del framework open source. Giovedì 18 febbraio 2016 Spring Intro Una panoramica del framework open source Giovedì 18 febbraio 2016 Programma della mattinata 9.45-10.45: Primo Modulo Introduzione a Spring Framework Panoramica delle componenti principali

Dettagli

JDBC vs ibatis. Un caso di studio. Fabrizio Gianneschi Atlantis S.p.A. 30 Ottobre 2004 Seminario JUG DIEE 1

JDBC vs ibatis. Un caso di studio. Fabrizio Gianneschi Atlantis S.p.A. 30 Ottobre 2004 Seminario JUG DIEE 1 JDBC vs ibatis Un caso di studio Fabrizio Gianneschi Atlantis S.p.A. 30 Ottobre 2004 Seminario JUG Sardegna @ DIEE 1 Cos è ibatis Framework open source per la gestione della persistenza in Java Disaccoppia

Dettagli

Corso Programmazione Java Avanzato

Corso Programmazione Java Avanzato Corso Programmazione Java Avanzato Codice: ITJA0113 Durata: 40 ore Descrizione corso Questo corso fornisce una panoramica sulle tecnologie impiegate per la realizzazione di applicazioni web basate sulla

Dettagli

Tito Flagella - Introduzione alla programmazione di Servlet

Tito Flagella - Introduzione alla programmazione di Servlet Introduzione alla programmazione di Servlet Caratteristiche di base (1) Estensioni del server scritte in Java utilizzando la Servlet API La Servlet API è diventata un estensione standard di Java, dalla

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

OUTLINE. Java Server Side a bite of history. cosa vedremo. Java Server Side. Java Server Side. Java server side: Evoluzioni

OUTLINE. Java Server Side a bite of history. cosa vedremo. Java Server Side. Java Server Side. Java server side: Evoluzioni 1 OUTLINE Java server side: servlet jsp Evoluzioni JSTL Expression Language Modelli di interazione Strumenti Netbeans cosa vedremo Java Server Side a bite of history 2 Java servlet: storia gerarchia di

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

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

Prova scritta del 13 luglio 2010

Prova scritta del 13 luglio 2010 Matricola: Cognome: Nome: Insegnamento: LAB Basi di dati LAB Basi di dati e web Basi di dati e web 4 CFU Laboratorio di Basi di dati (Laboratorio di Basi di dati e Web) Prova scritta del 13 luglio 2010

Dettagli

Basi di dati - Laboratorio

Basi di dati - Laboratorio Basi di dati - Laboratorio Corso di Laurea in Bioinformatica Docente: Barbara Oliboni Lezione 6 Contenuto della lezione Servlet Servlet engine Ciclo di vita Struttura Tomcat Architettura Struttura directory

Dettagli

Corso di Basi di Dati e Sistemi Informativi: Sperimentazioni

Corso di Basi di Dati e Sistemi Informativi: Sperimentazioni Corso di Basi di Dati e Sistemi Informativi: Sperimentazioni Una breve introduzione alle servlet Matteo Baldoni Dipartimento di Informatica - Universita` degli Studi di Torino C.so Svizzera, 185 - I-10149

Dettagli

PROBLEMA INTRODUZIONE E CONTESTO. MODEL VIEW CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Pattern architetturale

PROBLEMA INTRODUZIONE E CONTESTO. MODEL VIEW CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Pattern architetturale MODEL VIEW CONTROLLER MODEL VIEW CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2014 2015 rcardin@math.unipd.it Architetturali

Dettagli

MODEL VIEW CONTROLLER PROBLEMA

MODEL VIEW CONTROLLER PROBLEMA MODEL VIEW CONTROLLER MODEL VIEW PATTERNS INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2017 2018 rcardin@math.unipd.it Architetturali

Dettagli

Web application: evoluzione. Web Application Engineering Java Server Faces IIT-CNR. Pescara, Maggio 2007 Alei Ud A.

Web application: evoluzione. Web Application Engineering Java Server Faces IIT-CNR. Pescara, Maggio 2007 Alei Ud A. Web Application Engineering Java Server Faces cristian lucchesi IIT-CNR Pescara, 15-16 Maggio 2007 Alei Ud A 1 Web application: evoluzione 22 1 Java Server Faces (JSF) la tecnologia JSF è una framework

Dettagli

PRIMO MODULO. DURATA: 80 ore CONTENUTI

PRIMO MODULO. DURATA: 80 ore CONTENUTI 0 PRIMO MODULO DURATA: 80 ore CONTENUTI 1. Introduzione alla programmazione a. Cosa è la programmazione strutturata b. Strutture dati c. Come si affronta una problematica da risolvere d. Quali sono i passi

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

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

Verso l architettura MVC-2 Java Server Pages (JSP)

Verso l architettura MVC-2 Java Server Pages (JSP) Verso l architettura MVC-2 Java Server Pages (JSP) 1 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 JSP Una pagina JSP può essere vista come uno schema di pagina Web dove: le

Dettagli

Verso l architettura MVC-2 Java Server Pages (JSP)

Verso l architettura MVC-2 Java Server Pages (JSP) Verso l architettura MVC-2 Java Server Pages (JSP) 1 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 0 / 2 0 1 1 JSP 2 Una pagina JSP può essere vista come uno schema di pagina Web dove:

Dettagli

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

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1 Tomcat E uno dei servlet engine più diffusi. Può funzionare sia come prodotto standalone, sia come modulo del web server Apache. Disponibile gratuitamente (per molti sistemi operativi tra cui Linux e Windows)

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

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

Basi di dati - Laboratorio

Basi di dati - Laboratorio Basi di dati - Laboratorio Corso di Laurea in Bioinformatica Docente: Barbara Oliboni Lezione 7 Contenuto della lezione Java DataBase Connectivity (JDBC) Principali classi JDBC Operazioni di base di JDBC

Dettagli

ACADEMY SVILUPPATORE JAVA

ACADEMY SVILUPPATORE JAVA ACADEMY SVILUPPATORE JAVA PERCORSO ACADEMY SVILUPPATORE JAVA DESCRIZIONE Al termine del percorso di formazione i partecipanti potranno utilizzare con padronanza i linguaggi di programmazione Java. Inoltre

Dettagli

MARCO CASARIO CTO Comtaste <speaker name> < > <company/community> Javaday IV Roma 30 gennaio 2010

MARCO CASARIO CTO Comtaste  <speaker name> < > <company/community> Javaday IV Roma 30 gennaio 2010 Enterprise RIAs con Spring e Flex MARCO CASARIO CTO Comtaste http://casario.blogs.com Mission Exploring new frontiers in Rich Internet Applications Maximizing the User Experiences Technologies The technologies

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

Corso Online. We Train Italy info@wetrainitaly.it

Corso Online. We Train Italy info@wetrainitaly.it Corso Online Programmatore Java New Edition We Train Italy info@wetrainitaly.it Programma Generale del Corso Programmatore Java New Edition 1. Introduzione al corso Java da 0 al web Presentazione del corso

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

DIREZIONI CORRENTI di EVOLUZIONE Sicuramente il campo applicativo più ampio di dimensioni è il VLVWHPD:HE stesso EVOLUZIONI DEL CALCOLO WEB

DIREZIONI CORRENTI di EVOLUZIONE Sicuramente il campo applicativo più ampio di dimensioni è il VLVWHPD:HE stesso EVOLUZIONI DEL CALCOLO WEB DIREZIONI CORRENTI di EVOLUZIONE Sicuramente il campo applicativo più ampio di dimensioni è il VLVWHPD:HE stesso EVOLUZIONI DEL CALCOLO WEB Browser tradizionali e server web Le sfide sono di: utilizzare

Dettagli