UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA

Slides:



Advertisements
Presentazioni simili
Architetture dei sistemi distribuiti Prof
Advertisements

Database MySql.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
Java Enterprise Edition (JEE)
una interfaccia internet per il sistema Momis
di Architetture Peer to Peer per la Gestione di Database Distribuiti
Confronto di sistemi per
Obiettivo della tesi Percorso
WebProfessional Web Content Management System
1 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Relatore:
Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Re-engineering del wrapper XML Schema per il sistema MOMIS
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – sede Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di un.
Università degli Studi di Modena e Reggio Emilia Facoltà dIngegneria - sede di Modena Corso di Laurea in Ingegneria Informatica Interoperabilità di componenti.
Università degli Studi di Modena e Reggio Emilia
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica MOMIS: servizi di wrapping.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e realizzazione.
Progetto e realizzazione del software "Solar Data Manager"
Analisi e Contromisure di tecniche di Sql Injection
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
IN QUESTA PRESENTAZIONE…
OUTLINE Riprogettazione del database del portale Web della Facoltà di Ingegneria Sviluppo di una applicazione WEB DB : HOMEPAGE DOCENTI Architettura multilivello.
Università degli studi di Modena e Reggio Emilia Progetto e realizzazione di un tool di sincronizzazione database server – palmare per il controllo del.
Acquisti OnLine Progetto
Basi di Dati prof. A. Longheu
LABIS-SD Antonio Cuomo393/121 Clelio Quattrocchi393/127 Emanuele Zuzolo393/136 Fabio Melillo393/141 Stefano Mastrocinque393/135 Valerio Vincenzo Guarino393/155.
Distributed Object Computing
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Architettura Three Tier
1 Programmazione ad oggetti in Java E.Mumolo, DEEI
Integrazione di una piattaforma IPTV in un’architettura SOA
Daniel Stoilov Tesi di Laurea
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria Enzo Ferrari Modena Corso di Laurea in Ingegneria Informatica PROGETTO E SVILUPPO.
Architettura Java/J2EE
Un sistema software per la vendita di prodotti on-line Università degli studi di Bologna Facoltà di ingegneria Reti di calcolatori L-S Studente: Rinaldi.
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
PROGETTAZIONE E REALIZZAZIONE DI UN MIDDLEWARE CLIENT-SERVER
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
Progetto di Reti di Calcolatori L-S Orchestrazione di servizi WEB
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Sistemi Informativi sul Web
Progetto Ingegneria del Software
Ingegneria del software Modulo 3 -Tecniche dimplementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 3 – Ruoli nella.
Ingegneria del software Modulo 3 -Tecniche dimplementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 4 – Le transazioni.
Reti di calcolatori 14 novembre 2003 INFORMATICA GENERALE Scienze per Operatori dei Servizi Giuridici Anno Accademico
UNIVERSITA' DEGLI STUDI DI MILANO Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica Analisi, progettazione e realizzazione.
1 di 15 Università degli studi di Modena e Reggio Emilia Mail Configurator: un’applicazione ad agenti mobili basata su ruoli dinamici Correlatori: Ing.
Java Enterprise Edition
Progettazione e realizzazione di un’applicazione J2EE Corso TAPS 2001/02 Gianna Reggio.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
Architetture a componenti Java per la realizzazione di DSS distribuiti Giordano Vicoli - ENEA 28 Ottobre 2003.
Analisi dettagliata e design
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Service Composition Analysis Progetto Reti di Calcolatori-LS prof. A.Corradi tutor S.Monti Piattaforma di gestione ed analisi statistica di workflow in.
Java Distributed Event Service Bringing events to J2EE platform Università degli studi di Bologna Corso di Laurea Specialistica in Ingegneria Informatica.
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 1 – Introduzione.
Ingegneria del software Modulo 3 – Tecniche d’implementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 5 – Demarcazione.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 2 – Tipi di.
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Mobile Agent and Enterprise Architecture Integration Il Gestore di Librerie e Servizi Lambertini Riccardo.
Progettazione e realizzazione di un’applicazione J2EE Parte 2.
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
Open City Platform è un progetto finanziato da Application Store Tutorial 30/09/2015.
Transcript della presentazione:

UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena  Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di un’applicazione Web-Database a 3 livelli per la gestione degli appelli d’esame Relatore Prof. Sonia Bergamaschi Tesi di Laurea di Andrea Malavasi Correlatore Ing. Maurizio Vincini Anno Accademico 2001-2002

Architettura della J2EE Caratteristiche degli EJB Conclusioni Agenda Introduzione alla J2EE Architettura della J2EE Caratteristiche degli EJB Conclusioni Demo dell’applicazione - 2 -

Il problema… Realizzare applicazioni distribuite soddisfando i seguenti requisiti: definizione di un modello di progettazione standard supporto per applicazioni client eterogenee riduzione dei tempi di sviluppo scalabilità gestione efficiente delle risorse gestione del carico di lavoro automatica integrazione dei sistemi esistenti ampia scelta di server, strumenti e componenti sicurezza - 3 -

Modello applicativo della J2EE - 4 -

EJB: I vantaggi Semplificazione del processo di sviluppo Riusabilità del codice e Modularità Robustezza Gestione automatica di: transazioni (Commit, Rollback e Recovery) scalabilità: aumentando l’HW, le prestazioni aumentano in modo lineare sicurezza Alte prestazioni bilanciamento dinamico dei carichi di lavoro caching delle connessioni al database - 5 -

EJB: l’architettura EJB Server: Application Server EJB Container: gestisce gli EJB Enterprise Bean Instance: una istanza di EJB Client: utilizzatore finale del bean - 6 -

Tipologie di EJB Sono previsti due tipi di EJB: – Session Bean • non sono persistenti – Entity Bean • sono persistenti - 7 -

Session Bean q Non è persistente q Implementa l’interfaccia javax.ejb.SessionBean q In genere implementa la logica di business dell’applicazione – Riceve le invocazioni dal client – Agisce (creazione, modifica, cancellazione) sugli Entity Bean • si comporta come client verso gli entity • L’accesso agli entity bean risulta così maggiormente protetto – La sequenza delle operazioni sono eseguite in genere all’interno di una transazione q Ciascuna istanza è da considerarsi una ESTENSIONE logica dell’applicazione client – La vita di un session bean è legata al client che l’ha instanziato – E’ come un agente dedicato allo specifico client, in esecuzione sul server - 8 -

Entity Bean q Rappresenta un oggetto persistente q Consente di mappare una sorgente dati su una classe Java – tabella, vista, join o stored procedure in un database relazionale – dati legacy opportunamente incapsulati q La lettura / modifica degli attributi di tali entità si traduce nelle corrispondenti operazioni sulla tabella stessa q Ciascuna istanza può essere condivisa da tanti client q Quando l’istanza di un Entity Bean smette di esistere, il dato che rappresenta continua ad esistere sul DB èin caso di crash del sistema i dati rappresentati dagli entity bean resistono, mentre i session bean vengono perduti - 9 -

Connection Pooling Accesso al database per mezzo di una tecnica definita connection pooling che permette l’accesso alle risorse server in particolare ai database ad un numero elevato di utenti Gestione automatica della cache di connessione da parte dell’EJB container Utilizzo della standard API JBDC che mette a disposizione un’interfaccia definita DataSource per la gestione delle connessioni. - 10 -

Vantaggi della J2EE Architettura e sviluppo semplificati Scalabilità per soddisfare l’aumento di richieste Integrazione di sistemi informativi preesistenti Ampia scelta di server, strumenti di sviluppo, componenti Modello per la sicurezza flessibile - 11 -

Architettura e sviluppo semplificati La piattaforma J2EE offre un modello di sviluppo basato su componenti semplificato Basandosi sulla J2SE, supporta il paradigma Write Once, Run Anywhere: un’applicazione risulta portabile su tutti i server conformi allo standard J2EE Il modello basato su componenti offre vantaggi rispetto a diversi aspetti: adattamento flessibile alle funzionalità richieste per un’applicazione definizione del comportamento dell’applicazione in fase di assemblaggio e deployment suddivisione dei ruoli - 12 -

Scalabilità I container della piattaforma J2EE forniscono un meccanismo che permette di ottenere un alto livello di scalabilità dell’applicazione distribuita, senza richiedere l’intervento da parte dello sviluppatore Possono realizzare la scalabilità rispetto a particolari funzionalità dell’applicazione, come il supporto alle transazioni, le connessioni verso i database, la gestione del ciclo di vita È possibile configurare i container per essere eseguiti su più calcolatori distribuiti - 13 -

Integrazione di sistemi informativi preesistenti La piattaforma J2EE, insieme alla J2SE, include un insieme di API standard per accedere a sistemi informativi preesistenti: JDBC: accesso a database relazionali Java Transaction API: gestione e coordinamento di transazioni distribuite Java Naming and Directory Service: accesso alle informazioni dei servizi di naming e directory aziendali Java Message Service: invio e ricezione di messaggi JavaMail: invio e ricezione di messaggi di posta elettronica Java IDL: invocazione di servizi CORBA - 14 -

Conclusioni J2EE piattaforma multilivello per la realizzazione di applicazioni distribuite Strumenti utilizzati: Linguaggio di programmazione: Java 2 Sistema operativo: Unix WEB server: Tomcat EJB server: JBoss RDBMS: SQL server Componenti utilizzati: EJB (implementati 25) JSP (implementate 18) Oltre 10.000 linee di codice prodotte - 15 -