Plants by WebSphere |
|
|
![]() |
|
Esegui | Configura | Note tecniche | Javadoc | Crea con Ant |
Introduzione |
Individuazione delle tabelle database |
Individuazione del codice sorgente |
Riesame delle note di codifica |
È possibile creare un indirizzo e-mail e una password univoci per l'esempio di Plants by WebSphere facendo clic su Registrare il proprio account qui nella pagina Collegamento. Inoltre, un indirizzo e-mail predefinito e una password esistono per l'esempio Plants by WebSphere presentato nella seguente tabella:
Indirizzo e-mail | plants@plantsbywebsphere.ibm.com |
Password | plants |
Le tabelle del database per questo esempio sono CUSTOMER, INVENTORY, ORDERINFO, ORDERITEM, IDGENERATOR, BACKORDER e SUPPLIER. Tali tabelle si trovano nel database PLANTSDB. Il database PLANTSDB si trova nel file PlantsByWebSphere.ear ed è situato nella directory root_profilo/installedApps/nome cella/PlantsByWebSphere.ear/Database/PLANTSDB, dove nome cella indica il nome della cella in cui viene installata l'applicazione.
Visualizzare il layout della tabella nelle seguenti istruzioni SQL:
CREATE TABLE CUSTOMER (CUSTOMERID VARCHAR(250) NOT NULL, PASSWORD VARCHAR(250), FIRSTNAME VARCHAR(250), LASTNAME VARCHAR(250), ADDR1 VARCHAR(250), ADDR2 VARCHAR(250), ADDRCITY VARCHAR(250), ADDRSTATE VARCHAR(250), ADDRZIP VARCHAR(250), PHONE VARCHAR(250)); |
Individuare il codice sorgente nella directory
Per i clienti z/OS: La struttura ad albero dei codici sorgente per gli esempi non viene fornita in z/OS, perché le applicazioni di esempio non sono create sulla piattaforma z/OS.
Panoramica |
Servlet |
Bean enterprise |
L'esempio di Plants by WebSphere incorpora le seguenti tecnologie:
L'applicazione Plants by WebSphere è supportata mediante una serie di pagine JSP e HTML. Queste pagine comunicano con i seguenti servlet: AccountServlet, ShoppingServlet, ImageServlet e AdminServlet. I servlet utilizzano i diversi metodi aziendali del bean enterprise, che a loro volta accedono ai dati dal database in base alle necessità. In generale, i bean di sessione senza stato vengono utilizzati per essere interfacciati con i bean di entità, in modo da ridurre il numero delle transazioni.
La seguente sezione fornisce informazioni sui servlet utilizzati in questa applicazione.
Il servlet ShoppingServlet elabora la maggior parte delle interazioni tra il browser e i bean enterprise. Questa interazione comprende l'inventario, il carrello d'acquisto e le funzioni relative agli ordini. Selezionando una categoria di acquisto da sfogliare verrà utilizzato un bean di sessione Catalogo per individuare e visualizzare tutti gli oggetti Inventory rilevanti. È inoltre possibile visualizzare i dettagli di un articolo utilizzando un bean di sessione Catalogo per ottenere informazioni da un bean di entità CMP Inventario.
L'aggiunta di un articolo al carrello d'acquisto crea un bean di sessione con stato ShoppingCart. Un bean di sessione Catalogo ottiene i dati Inventario e colloca l'articolo nel bean ShoppingCart. La visualizzazione e l'aggiornamento del carrello d'acquisto viene effettuata utilizzando il bean di sessione ShoppingCart.
Dopo aver immesso le informazioni relative alla spedizione e alla fatturazione, il bean ShoppingCart crea un nuovo bean CMP Order. Al termine della procedura di checkout, viene creato un bean di sessione senza stato Mailer per inviare una e-mail di conferma utilizzando l'API JavaMail.
Il servlet ImageServlet ottiene e colloca immagini dei prodotti nel database. Il servlet ottiene immagini provenienti dalle pagine JSP e HTML del database e le restituisce al browser tramite la risposta HTTP.
Il servlet AdminServlet elabora le richieste di ripopolamento del database provenienti da un utente (browser).
Quando si elaborano le richieste di reinserimento dalla pagina help.jsp, il servlet AdminServlet crea un bean BMP (bean-managed persistence) definito ResetDB. Questo bean elimina tutte le tabelle del database e reinserisce le tabelle con i valori di dati iniziali dal file properties pbw.properties.
La seguente sezione fornisce informazioni sui bean enterprise utilizzati in questa applicazione.
Catalog è un bean di sessione senza stato. Si tratta dell'accesso primario al bean di entità CMP (Container-managed persistance). I bean di sessione senza stato generalmente accedono ai dati dei bean di entità, e contemporaneamente limitano il numero delle transazioni utilizzate. Il bean di sessione Catalog dispone di metodi aziendali per ottenere informazioni da uno o più bean Inventory. I metodi esistono per aggiungere e rimuovere una voce di inventario. Inoltre, il bean di sessione Catalog dispone di metodi per modificare i bean Inventory esistenti.
Customer è un bean di entità CMP. Contiene e gestisce i dati del cliente necessari. Il bean di entità Customer ha metodi per creare, rilevare e aggiornare le informazioni sul cliente, oltre alla verifica di una password e il reperimento di campi nel bean di entità Customer.
Inventory è un bean di entità CMP che contiene e gestisce i dati degli articoli dell'inventario. I metodi sono disponibili per rilevare, creare, reperire e impostare i campi dei dati.
Login è un bean di sessione senza stato che interfaccia con il bean di entità Customer CMP per creare e aggiornare gli account dei clienti.
Mailer è un bean di sessione senza stato che crea e invia una e-mail di conferma ordine utilizzando l'API JavaMail.
Order è un bean di entità CMP che contiene e gestisce i dati degli ordini. Sono disponibili metodi per il rilevamento, la creazione e il richiamo dei campi relativi ai dati.
OrderItem è un bean di entità CMP che contiene e gestisce un solo articolo dell'ordine. Sono disponibili metodi per il rilevamento, la creazione e il richiamo dei campi relativi ai dati.
ReportGenerator è un bean di sessione senza stato che genera report in base alle informazioni rilevate negli ordini. Il bean di sessione ReportGenerator interfaccia con il bean di entità Order CMP. I report comprendono gli articoli maggiormente venduti e i relativi codici di avviamento postale in un intervallo di date specificato.
ShoppingCart è un bean di sessione con stato che conserva un elenco degli articoli inventario da acquistare tramite la sessione HTTP. Il bean di sessione ShoppingCart comprende metodi aziendali per aggiungere, eliminare e aggiornare articoli di inventario, oltre a un metodo per creare un nuovo bean di entità Order CMP quando il cliente è in grado di completare un acquisto.
ResetDB è un bean di entità BMP. Questo bean di entità elimina tutte le righe delle tabelle del database.