Mode Agent
mode Agent (Business Délégué Pattern) pour la couche de présentation et la couche d'affaires découplage. Il est essentiellement utilisé pour réduire la communication ou présentation code de couche code de couche métier fonctionnalités d'interrogation à distance. Dans la couche d'affaires, nous avons les entités suivantes.
- Client (Client) - présentation code de la couche peut être JSP, servlet, ou un code UI java.
- Agent (Délégué commercial) - une entrée de classe pour l'entité cliente, qui donne accès à la méthode de service d'entreprise.
- Requête de service (Service LookUp) -Trouver objet de service est responsable de l' obtention de l'entreprise concernée à atteindre, et donne accès à les objets métier objets représentatifs.
- Services aux entreprises (services aux entreprises) -Interface de services aux entreprises. classe de l'entité qui implémente le service de l'entreprise, fournissant la logique métier réelle à atteindre.
réalisation
Nous allons créer leclient, BusinessDelegate, BusinessService, LookUpService,JMSService etEJBServicepour représenter le modèle d'affaires pour le compte de diverses entités.
BusinessDelegatePatternDemo,notre classe de démonstration pour démontrer l'utilisation deBusinessDelegateet de l' agentdu clientl' utilisation du mode.
Etape 1
Créer une interface BusinessService.
BusinessService.java
interface publique BusinessService { doProcessing public void (); }
Etape 2
Créer un service de classe d'entité.
EJBService.java
EJBService public class implémente BusinessService { @Override doProcessing public void () { System.out.println ( "tâche de traitement en invoquant Service EJB"); } }
JMSService.java
JMSService public class implémente BusinessService { @Override doProcessing public void () { System.out.println ( "tâche de traitement en invoquant service JMS"); } }
Etape 3
Créer un service de renseignements d'affaires.
BusinessLookUp.java
public class BusinessLookUp { publique BusinessService getBusinessService (String serviceType) { if (serviceType.equalsIgnoreCase ( "EJB")) { return new EJBService (); } Else { return new JMSService (); } } }
Etape 4
Créer un représentant de l'entreprise.
BusinessDelegate.java
public class BusinessDelegate { privé BusinessLookUp lookupService = new BusinessLookUp (); privé BusinessService BusinessService; serviceType private String; setServiceType public void (String serviceType) { this.serviceType = serviceType; } public void doTask () { BusinessService = lookupService.getBusinessService (serviceType); businessService.doProcessing (); } }
Etape 5
Créer un client.
Student.java
public class client { BusinessDelegate BusinessService; Client publique (BusinessDelegate BusinessService) { this.businessService = BusinessService; } public void doTask () { businessService.doTask (); } }
Etape 6
Utilisez BusinessDelegate et classe Client pour démontrer le mode de l'agent.
BusinessDelegatePatternDemo.java
public class BusinessDelegatePatternDemo { main (String [] args) {public static void BusinessDelegate businessDelegate = new BusinessDelegate (); businessDelegate.setServiceType ( "EJB"); client client = new client (businessDelegate); client.doTask (); businessDelegate.setServiceType ( "JMS"); client.doTask (); } }
Etape 7
Vérifiez la sortie.
tâche de traitement en invoquant Service EJB tâche de traitement en invoquant service JMS