Skip to content

1. Introduzione

Il PDF di questo documento è disponibile |QUI|.

Gli esempi contenuti nel documento sono disponibili |QUI|.

Questo documento si basa su un documento precedente redatto nel 2010 e intitolato "Introduzione a Java EE con NetBeans 6.8 e il server GlassFish v3". Questa versione include principalmente le seguenti modifiche:

  • la sezione dedicata a JSF (Java Server Faces) è trattata in un documento separato: "Introduzione a Java Server Faces, PrimeFaces e PrimeFaces Mobile", disponibile all'indirizzo [https://stahe.github.io/en-jsf2-pf-pfm-juin-2012/]. Utilizza funzionalità della versione 2 di JSF,
  • i progetti sono progetti Maven.

Java EE sta per Java Enterprise Edition. J2EE (Java 2 Enterprise Edition) era il termine precedente. J2EE si riferisce alle tecnologie Java utilizzate per creare applicazioni aziendali con JDK 1.4 o versioni precedenti. Poiché JDK 1.5 ha introdotto numerose nuove funzionalità nel linguaggio Java, Sun ha introdotto nuove tecnologie basate su questo linguaggio potenziato per ovviare alle carenze di quelle stesse tecnologie all'interno di J2EE. Il termine Java EE 5 è stato quindi utilizzato per riferirsi all'insieme di tecnologie che collaborano per creare un'applicazione aziendale utilizzando la piattaforma Java. Al momento dell'aggiornamento di questo documento, l'ultima versione di Java EE è Java EE 6.

Libri di Antonio Goncalves:

  • Java EE 5, pubblicato da Eyrolles
  • Beginning Java EE 6 Platform with Glassfish 3, pubblicato da Apress

sono libri eccellenti per scoprire le tecnologie di Java EE 5 e Java EE 6. Tutte le principali tecnologie Java EE vengono esaminate nel contesto di casi di studio realistici. L'autore ha un sito web [http://www.antoniogoncalves.org] che i lettori sono invitati a visitare.

Questo documento esplora alcune delle tecnologie di Java EE 5. Creiamo un'applicazione di base a tre livelli [presentazione, logica di business, accesso ai dati] disponibile in diverse versioni:

Un'applicazione web che utilizza le seguenti tecnologie:

  • Java Server Faces: per il livello web
  • EJB3 o Spring: per il livello business
  • EJB3 o Spring, JPA/Hibernate, JPA/EclipseLink: per creare diversi livelli di accesso ai dati

Un'applicazione client/server che utilizza le seguenti tecnologie:

  • Swing: per il livello GUI client con supporto Spring
  • EJB3 o servizio web: per il livello server

In questa sede non vengono trattate alcune tecnologie Java EE, come gli MDB (Message Driven Beans) o gli EJB3 con stato. Per saperne di più, si rimanda ai libri di Antonio Goncalves.

Esistono altre tecnologie open source disponibili per la creazione di applicazioni a tre livelli. Una combinazione molto popolare è Spring (http://www.springframework.org/) / Hibernate (http://www.hibernate.org/). Per consentire al lettore di confrontare le tecnologie EJB3 e Spring, l'applicazione precedente presenta versioni in cui Spring sostituisce EJB3.

Questo documento è un tutorial (TD) utilizzato nel quinto anno della scuola di ingegneria ISTIA dell'Università di Angers [http://www.istia.univ-angers.fr]. Questo tutorial descrive l'applicazione da realizzare, le tecnologie Java da utilizzare e dove trovare informazioni. La soluzione proposta è spesso molto strutturata. Il compito pone delle domande senza fornire le risposte. Spetta allo studente trovarle.

Il processo di apprendimento di Java EE qui delineato richiede un investimento di tempo stimato tra le 50 e le 100 ore. Il documento contiene una quantità significativa di codice, rendendo possibile il copia e incolla. Inoltre, tutti i progetti NetBeans sono descritti in dettaglio. Nel complesso, il documento fornisce i framework per le soluzioni e agli studenti viene chiesto di inserire alcuni dettagli. Il documento può essere utile anche a chi non può o non vuole investire così tanto tempo. È possibile concentrarsi esclusivamente sulle architetture descritte e saltare la sezione del codice oggetto delle domande.

Per sviluppare ed eseguire l'applicazione, utilizziamo l'IDE NetBeans. NetBeans è un'applicazione che richiede un discreto impiego di risorse: per lavorare comodamente è necessario disporre di 1 GB di RAM. Può essere scaricato dall'URL [http://www.netbeans.org/].

Questo documento fa riferimento ai seguenti corsi:

  1. Java 5 Persistence in Practice: [https://stahe.github.io/it-jpa-juin-2007/] - fornisce gli strumenti per costruire il livello di accesso ai dati con JPA (Java Persistence API)
  1. Introduzione al linguaggio Java [https://stahe.github.io/it-java-sept-1998/] - per principianti
  2. Introduzione a Java Server Faces, PrimeFaces e PrimeFaces Mobile attraverso esempi [https://stahe.github.io/it-jsf2-pf-pfm-juin-2012/]

Questi materiali didattici sono di seguito citati come [rif1], [rif2] e [rif3].

Serge Tahé, giugno 2012.