사업대표모델
Business Delegate Pattern은 프레젠테이션 레이어와 비즈니스 레이어를 분리하는 데 사용됩니다. 기본적으로 표현계층 코드에서 통신이나 원격 질의 기능을 비즈니스 계층 코드로 축소하기 위해 사용된다. 비즈니스 계층에는 다음 엔터티가 있습니다.
Client - 프리젠테이션 계층 코드는 JSP, 서블릿 또는 UI Java 코드일 수 있습니다.
Business Delegate - 비즈니스 서비스 방법에 대한 액세스를 제공하는 클라이언트 엔터티용 항목 클래스입니다.
LookUp Service - 조회 서비스 개체는 관련 비즈니스 구현을 가져오고 비즈니스 개체에 비즈니스 대표 개체에 대한 액세스 권한을 제공하는 일을 담당합니다.
비즈니스 서비스 - 비즈니스 서비스 인터페이스. 비즈니스 서비스를 구현하는 엔터티 클래스는 실제 비즈니스 구현 로직을 제공합니다.
Implementation
비즈니스 대표 패턴의 다양한 엔터티를 나타내기 위해 Client, BusinessDelegate, BusinessService, LookUpService, JMSService 및 EJBService를 생성합니다.
BusinessDelegatePatternDemo, 데모 클래스에서는 BusinessDelegate 및 Client를 사용하여 비즈니스 대표 패턴의 사용법을 보여줍니다.
1단계
BusinessService 인터페이스를 생성합니다.
BusinessService.java
public interface BusinessService { public void doProcessing(); }
2단계
엔티티 서비스 클래스를 생성합니다.
EJBService.java
public class EJBService implements BusinessService { @Override public void doProcessing() { System.out.println("Processing task by invoking EJB Service"); } }
JMSService.java
public class JMSService implements BusinessService { @Override public void doProcessing() { System.out.println("Processing task by invoking JMS Service"); } }
3단계
비즈니스 쿼리 서비스를 만듭니다.
BusinessLookUp.java
public class BusinessLookUp { public BusinessService getBusinessService(String serviceType){ if(serviceType.equalsIgnoreCase("EJB")){ return new EJBService(); }else { return new JMSService(); } } }
4단계
비즈니스 담당자를 만듭니다.
BusinessDelegate.java
public class BusinessDelegate { private BusinessLookUp lookupService = new BusinessLookUp(); private BusinessService businessService; private String serviceType; public void setServiceType(String serviceType){ this.serviceType = serviceType; } public void doTask(){ businessService = lookupService.getBusinessService(serviceType); businessService.doProcessing(); } }
5단계
클라이언트를 생성합니다.
Student.java
public class Client { BusinessDelegate businessService; public Client(BusinessDelegate businessService){ this.businessService = businessService; } public void doTask(){ businessService.doTask(); } }
6단계
BusinessDelegate 및 Client 클래스를 사용하여 비즈니스 표현 패턴을 시연합니다.
BusinessDelegatePatternDemo.java
public class BusinessDelegatePatternDemo { public static void main(String[] args) { BusinessDelegate businessDelegate = new BusinessDelegate(); businessDelegate.setServiceType("EJB"); Client client = new Client(businessDelegate); client.doTask(); businessDelegate.setServiceType("JMS"); client.doTask(); } }
7단계
출력을 확인합니다.
rreee