modo de agente
modo de agente (Business Pattern Delegado) para a camada de apresentação ea dissociação camada de negócios. É basicamente usado para reduzir o código da camada de negócios de código de camada de capacidades de consulta remota de comunicação ou de apresentação. Na camada de negócios, temos as seguintes entidades.
- Cliente (Client) - código de camada de apresentação pode ser JSP, servlet ou código java UI.
- Agent (Business Delegate) - uma entrada de classe para a entidade de cliente, que dá acesso ao método de serviço de negócios.
- Serviço de Consulta (Lookup Service) - Encontrar objeto de serviço é responsável por obter o negócio relevantes para atingir e fornece acesso à actividade objetos objetos representativos.
- Serviços de negócio (Business Service) - interface de serviço de negócios.classe de entidade que implementa o serviço de negócios, fornecendo lógica de negócio real de alcançar.
realização
Vamos criar ocliente, BusinessDelegate, BusinessService, LookUpService,JMSService eEJBServicepara representar o modelo de negócio em nome de várias entidades.
BusinessDelegatePatternDemo,a nossa classe de demonstração para demonstrar o uso deBusinessDelegatee uso de modo de agentede cliente.
passo 1
Criar a interface BusinessService.
BusinessService.java
BusinessService interface pública { doProcessing public void (); }
passo 2
Criar um serviço de classe entidade.
EJBService.java
classe pública EJBService implementa BusinessService { @Override doProcessing public void () { System.out.println ( "tarefa de processamento invocando Serviço EJB"); } }
JMSService.java
classe pública JMSService implementa BusinessService { @Override doProcessing public void () { System.out.println ( "tarefa de processamento invocando JMS Serviço"); } }
passo 3
Criar um serviço de informações de negócios.
BusinessLookUp.java
classe pública BusinessLookUp { pública BusinessService getBusinessService (String serviceType) { Se (serviceType.equalsIgnoreCase ( "EJB")) { retornar nova EJBService (); } Else { retornar nova JMSService (); } } }
passo 4
Criar um representante comercial.
BusinessDelegate.java
BusinessDelegate classe pública { privada BusinessLookUp lookupService = new BusinessLookUp (); BusinessService BusinessService privado; serviceType private String; setServiceType public void (serviceType String) { this.serviceType = serviceType; } public void doTask () { BusinessService = lookupService.getBusinessService (serviceType); businessService.doProcessing (); } }
passo 5
Criar um cliente.
Student.java
Cliente classe pública { BusinessDelegate BusinessService; Cliente público (BusinessDelegate BusinessService) { this.businessService = BusinessService; } public void doTask () { businessService.doTask (); } }
passo 6
Use BusinessDelegate e classe cliente para demonstrar o modo de agente.
BusinessDelegatePatternDemo.java
classe pública BusinessDelegatePatternDemo { main (String [] args) public static void { BusinessDelegate BusinessDelegate = new BusinessDelegate (); businessDelegate.setServiceType ( "EJB"); Cliente cliente = new Cliente (BusinessDelegate); client.doTask (); businessDelegate.setServiceType ( "JMS"); client.doTask (); } }
etapa 7
Verifique saída.
tarefa de processamento invocando Serviço EJB tarefa de processamento invocando JMS Serviço