Esercizio 3.6: Modellamento del pacchetto secondario del EJB

In questo esercizio viene modellato il pacchetto secondario del progetto di implementazione ejb. Questo pacchetto secondario modella il livello enterprise JavaBeans (EJB) contenente i modelli di dominio che popolano i dati per l'applicazione. Il livello EJB implementa la logica aziendale per il livello itso.ad.business.

Il pacchetto secondario del progetto di implementazione ejb è diviso in tre pacchetti secondari nella seguente tabella:

Pacchetto Descrizione
modello Questo pacchetto secondario descrive le classi di dominio che rappresentano i dati dell'applicazione persistente. Il pacchetto secondario del modello contiene le classi Cliente e Conto definite nel modello di analisi.
a Questo pacchetto secondario contiene il trasferimento oggetti che creano l'astrazione delle informazioni tra i livelli del progetto nel modello. Il trasferimento degli oggetti è costituito da interfacce implementate dalle classi Cliente e Conto.
facade Questo pacchetto secondario contiene l'implementazione della logica aziendale per il sistema di online banking PiggyBank. La facade di sessione contiene la classe PiggyBankController che definisce le attività funzionali, come ad esempio le operazioni Visualizza saldo, Trasferimento fondi e Incasso assegni descritte nel modello del caso di utilizzo PiggyBank.

In questo esercizio, creare le classi EJB di dominio Cliente e Conto e le relative interfacce. Creare le interfacce IAccount e ICustomer nel pacchetto del framework.

Modellamento dei bean enterprise di dominio

I bean enterprise Cliente e Conto formano il dominio del modello di progetto PiggyBank e sono utilizzati per popolare i dati dell'applicazione. Le classi Cliente e Conto sono derivate dalle stesse due classi identificate nel modello di analisi PiggyBank.Il diagramma di dominio di origine che illustra le classi Conto e Cliente. Il modello di progetto PiggyBank non contiene le classi Assegno e Trasferimento persistenti. Poiché è stato precedentemente deciso di non popolare i dati Assegno o Trasferimento, non è necessario creare gli oggetti aziendali Assegno e Trasferimento.

Per modellare il Cliente EJB:
  1. Nella vista Esplora modello, espandere Modello di progetto Enterprise IT, espandere Progetti di implementazione PiggyBank.
  2. Fare clic con il tastino destro del mouse sul pacchetto secondario itso.ad.business, quindi fare clic su Aggiungi UML > Pacchetto.
  3. Denominare il pacchetto modello.
  4. Nella vista Esplora modello, fare doppio clic su Principale.
  5. Nell'editor del diagramma, denominare il diagramma modello - Modello di entità persistente (EJB).
  6. In Tavolozza, fare doppio clic su Classe e denominarla Cliente.

Per modellare i parametri della classe Cliente:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe Cliente, quindi fare clic su Aggiungi UML > Attributo.
  2. Denominare l'attributo nome.
  3. Nella vista Proprietà, fare clic su Seleziona tipo.
  4. Nella finestra Seleziona elemento, fare clic su Stringa.
  5. Aggiungere un altro attributo alla classe Cliente del tipo Stringa denominato customerId.
  6. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe Cliente, quindi fare clic su Aggiungi UML > Operazione.
  7. Denominare l'operazione getData.
  8. Nella vista Proprietà, fare clic su Imposta tipo di restituzione.
  9. Nella finestra Seleziona elemento, espandere itso.ad.business, espandere framework e nel pacchetto secondario interfaces.to, fare clic su ICustomerTO.

L'EJB entità cliente è stata creata. Il diagramma dovrebbe essere simile alla seguente illustrazione:

Cliente EJB.

Per modellare il Conto EJB:
  1. In Tavolozza, fare doppio clic su Classe e denominare la classe Conto.
  2. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe Conto, quindi fare clic su Aggiungi UML > Attributo.
  3. Denominare l'attributo saldo.
  4. Nella vista Proprietà, fare clic su Seleziona tipo.
  5. Nella finestra Seleziona elemento, fare clic su Intero.
  6. Aggiungere un attributo di tipo Stringa alla classe Conto denominato accountNumber.
  7. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe Conto, quindi fare clic su Aggiungi UML > Operazione.
  8. Denominare l'operazione getData.
  9. Nella vista Proprietà, fare clic su Imposta tipo di restituzione.
  10. Nella finestra Seleziona elemento,espandere itso.ad.business, espandere framework e sul pacchetto secondario interfaces.to, quindi fare clic su IAccountTO.
  11. In Tavolozza, fare clic su Associazione.
  12. Nell'editor del diagramma, fare clic sulla classe Cliente, quindi trascinarla nella classe Conto.
  13. Nell'editor del diagramma, fare clic sulla relazione.
  14. Nella vista Proprietà, nei campi Conti Molteplicità, immettere *.

Il diagramma Modello EJB entità persistente è stato creato. Si noti che le operazioni getData dei bean enterprise Cliente e Conto restituiscono interfacce di trasferimento oggetti create nell'esercizio precedente. Il diagramma dovrebbe essere simile alla seguente illustrazione:

Relazione EJB Cliente e Conto.

Modellamento dei bean enterprise del trasferimento oggetti

I bean enterprise trasferimento oggetti sono utilizzati per trasferire dati tra i livelli del modello di progetto PiggyBank. PiggyBankEJBCustomerTO e PiggyBankEJBAccountTO implementano le interfacce ICustomer e IAccount definite nel livello del componente framework.

Per modellare PiggyBankEJBCustomerTO:
  1. Nella vista Esplora modello, espandere Modello di progetto Enterprise IT, espandere Progetti di implementazione PiggyBank.
  2. Fare clic con il tastino destro del mouse sul pacchetto secondario itso.ad.business, quindi fare clic su Aggiungi UML > Pacchetto.
  3. Denominare il pacchetto a.
  4. Nella vista Esplora modello, fare doppio clic su Principale.
  5. Nell'editor del diagramma, aggiungere il titolo interfaces.to - Trasferimento implementazioni oggetto.
  6. In Tavolozza, fare doppio clic su Classe e denominarla PiggyBankEJBCustomerTO.

Per modellare i parametri dell'interfaccia PiggyBankEJBCustomerTO:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankEJBCustomerTO, quindi fare clic su Aggiungi UML > Attributo.
  2. Denominare l'attributo id.
  3. Nella vista Proprietà, fare clic su Seleziona tipo.
  4. Nella finestra Seleziona elemento, fare clic su Intero.
  5. Aggiungere un altro attributo alla classe PiggyBankEJBCustomerTO del tipo Stringa denominato nome.
  6. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankEJBCustomerTO, quindi fare clic su Aggiungi UML > Operazione.
  7. Denominare l'operazione PiggyBankEJBCustomerTO (newId, newName).
  8. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro newId, quindi modificare il tipo di parametro su Stringa.
  9. Fare clic sul campo Tipo del parametro newName e modificare il tipo di parametro su Stringa.
Il bean enterprise PiggyBankEJBCustomerTO è stato modellato. PiggyBankEJBCustomerTO contiene un costruttore unico che esegue l'istanza della classe in base ad un ID e nome cliente. Ora, è necessario modellare la relazione tra il bean enterprise PiggyBankEJBCustomerTO e l'interfaccia ICustomerTO.

Per modellare la relazione di implementazione:
  1. Nella vista Esplora modello, espandere Modello di progetto Enterprise IT, espandere Progetti di implementazione PiggyBank, espandere itso.ad.business e framework.
  2. Nel pacchetto secondario interfaces.to, fare clic sulla classe ICustomerTO, quindi trascinarla nel diagramma.
  3. In Tavolozza, fare clic su Implementa.
  4. Nell'editor del diagramma, fare clic sulla classe PiggyBankEJBCustomerTO, quindi trascinarla sull'interfaccia ICustomerTO.

Il diagramma dovrebbe essere simile alla seguente illustrazione:

EJB PiggyBankEJBCustomerTO.

Per modellare PiggyBankEJBAccountTO:
  1. In Tavolozza, fare doppio clic su Classe e denominarla PiggyBankEJBAccountTO.
  2. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankEJBAccountTO, quindi fare clic su Aggiungi UML > Attributo.
  3. Denominare l'attributo saldo.
  4. Nella vista Proprietà, fare clic su Seleziona tipo.
  5. Nella finestra Seleziona elemento, fare clic su Intero.
  6. Aggiungere un altro attributo del tipo Stringa alla classe PiggyBankEJBAccountTO denominata numero.
  7. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankEJBAccountTO, quindi fare clic su Aggiungi UML > Operazione.
  8. Denominare l'operazione PiggyBankEJBAccountTO (newAccountNumber, newBalance).
  9. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro newAccountNumber, quindi modificare il tipo di parametro su Stringa.
  10. Fare clic sul campo Tipo del parametro newBalance e modificare il tipo di parametro su Intero.
Il bean enterprise PiggyBankEJBAccountTO è stato modellato. PiggyBankEJBAccountTO contiene un costruttore unico che esegue l'istanza di una determinata classe in base ad un numero di conto e un saldo. Ora, è necessario modellare la relazione tra il bean enterprise PiggyBankEJBAccountTO e l'interfaccia IAccountTO.

Per modellare la relazione di implementazione:
  1. Nella vista Esplora modello, espandere Modello di progetto Enterprise IT, espandere Progetti di implementazione PiggyBank, espandere itso.ad.business e framework.
  2. Nel pacchetto secondario interfaces.to, fare clic sulla classe IAccountTO, quindi trascinarla nel diagramma.
  3. In Tavolozza, fare clic su Implementa.
  4. Nell'editor del diagramma, fare clic sulla classe PiggyBankEJBAccountTO, quindi trascinarla sull'interfaccia IAccountTO.

Il diagramma dovrebbe essere simile alla seguente illustrazione:

Oggetti PiggyBankEJBCustomerTO e PiggyBankEJBAccountTO

Modellamento del bean enterprise facade

Il componente facade separa i dati dell'applicazione persistente dalla logica aziendale. Il bean enterprise facade viene definito dalla classe PiggyBankController derivata dalle classi di controllo identificate nel modello di analisi PiggyBank.

Per modellare una classe PiggyBankController:
  1. Nella vista Esplora modello, espandere Modello di progetto Enterprise IT, espandere Progetti di implementazione PiggyBank.
  2. Nel pacchetto secondario itso.ad.business, fare clic con il tastino destro del mouse sul pacchetto ejb, quindi fare clic su Aggiungi UML > Pacchetto.
  3. Denominare il nuovo pacchetto facade.
  4. Nella vista Esplora modello, fare doppio clic sul diagramma Principale, quindi aggiungere il titolo facade - Facade sessione (Bean senza stato EJB) sul modello.
  5. In Tavolozza, fare doppio clic su Classe e denominare l'interfaccia PiggyController.

Per modellare l'operazione cashCheck:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankController, quindi fare clic su Aggiungi UML > Operazione.
  2. Denominare l'operazione cashCheck (accountToCredit, checkAmount, checkReference).
  3. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro accountToCredit, quindi modificare il tipo di parametro su Stringa.
  4. Fare clic sul campo Tipo del parametro checkAmount e modificare il tipo di parametro su Intero.
  5. Fare clic sul campo Tipo del parametro checkReference, quindi modificare il tipo di parametro su Stringa.

Per modellare l'operazione getAccountByCustomerId:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankController, quindi fare clic su Aggiungi UML > Operazione.
  2. Denominare l'operazione getAccountByCustomerId (customerId).
  3. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro customerId, quindi modificare il tipo di parametro su Stringa.
  4. Nella vista Proprietà, nella pagina Generale, fare clic su Imposta tipo di restituzione.
  5. Nella finestra Seleziona elemento, espandere itso.ad.business, espandere framework e nel pacchetto interfaces.to , fare clic su IAccountTO.
  6. Nella vista Proprietà, nella pagina Generale, selezionare la casella di controllo Ordinato e deselezionare la casella di controllo Univoco.
  7. Deselezionare la casella di controllo Univoco.
  8. Nella pagina Avanzate, accanto a Molteplicità, fare clic sul campo Valore, quindi su 1..*.

Per modellare l'operazione getBalance:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankController, quindi fare clic su Aggiungi UML > Operazione.
  2. Denominare l'operazione getBalance (accountNumber, customerId).
  3. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro accountNumber, quindi modificare il tipo di parametro su Stringa.
  4. Fare clic sul campo Tipo del parametro customerId, quindi modificare il tipo di parametro su Stringa.
  5. Nella vista Proprietà, nella pagina Generale, fare clic su Imposta tipo di restituzione.
  6. Nella finestra Seleziona elemento, fare clic su Intero.

Per modellare l'operazione getCustomerById:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankController, quindi fare clic su Aggiungi UML > Operazione.
  2. Denominare l'operazione getCustomerById (customerId).
  3. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro customerId, quindi modificare il tipo di parametro su Stringa.
  4. Nella vista Proprietà, nella pagina Generale, fare clic su Imposta tipo di restituzione.
  5. Nella finestra Seleziona elemento, espandere itso.ad.business, espandere framework, quindi il pacchetto interfaces.to, fare clic su ICustomerTO.

Per modellare l'operazione di trasferimento:
  1. Nell'editor del diagramma, fare clic con il tastino destro del mouse sulla classe PiggyBankController, quindi fare clic su Aggiungi UML > Operazione.
  2. Denominare l'operazione trasferimento (amountToTransfer, creditAccountNr, customerId, debitAccountNr).
  3. Nella vista Proprietà, nella pagina Parametri, fare clic sul campo Tipo del parametro amountToTransfer e modificare il tipo di parametro su Intero.
  4. Fare clic sul campo Tipo del parametro creditAccountNr, quindi modificare il tipo di parametro su Stringa.
  5. Fare clic sul campo Tipo del parametro customerId, quindi modificare il tipo di parametro su Stringa.
  6. Fare clic sul campo Tipo del parametro debitAccountNr, quindi modificare il tipo di parametro su Stringa.

La facade del livello del componente itso.ad.business è stata modellata. Il diagramma dovrebbe essere simile alla seguente figura:

La classe PiggyBankController contiene l'implementazione facade per il livello di progetto PiggyBank itso.ad.business.
Termini di utilizzo | Feedback
(C) Copyright IBM Corporation 2004, 2005. Tutti i diritti riservati.