1 / 25

EJB 와 전자상거래

EJB 와 전자상거래. Bixon Technology 김상현. 개요. 전통적 C/S 환경에서 Web 환경으로의 기업 업무환경의 전이 Web Application Server 와 분산 컴포넌트 시스템의 중요성 증가 분산 컴포넌트 아키텍쳐로서의 EJB 의 중요성. 기업내 업무환경 변화. 90 년대 초 다운사이징 열풍으로 기업내 업무 환경이 MainFrame 에서 C/S 환경으로 변화 초반의 C/S 환경은 2-Tier 구조. Fat Client. DataBase. Logic.

Télécharger la présentation

EJB 와 전자상거래

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EJB와 전자상거래 Bixon Technology 김상현

  2. 개요 • 전통적 C/S 환경에서 Web 환경으로의 기업 업무환경의 전이 • Web Application Server와 분산 컴포넌트 시스템의 중요성 증가 • 분산 컴포넌트 아키텍쳐로서의 EJB의 중요성

  3. 기업내 업무환경 변화 • 90년대 초 다운사이징 열풍으로 기업내 업무 환경이 MainFrame에서 C/S 환경으로 변화 • 초반의 C/S 환경은 2-Tier 구조 Fat Client DataBase Logic

  4. C/S 환경의 변화 • Business Logic의 대부분을 서버에 할당 • Client는 GUI만 담당 • 3-Tier Architecture Application Server Thin Client Database Business Logic

  5. Web 기반 기술로의 이전 • E-Business의 등장 • 기업 업무의 Web으로의 전이 • Web 기반 기술의 잇점 활용 • Client 관리의 용이성 * 클라이언트 프로그램의 버전 관리 및 배포, 교육에 대한 비중이 감소 • 네트웍 로드 분산(HTTP) • ERP,EDI 등 기업시스템과의 통합 용이

  6. 기존 Web기반 기술의 문제점 • CGI 기반 기술의 문제점 • 세션 관리가 어려움 • 상태 관리를 할 수 없다 • 한 request 당 Process를 생성하는 방식으로 서버에 과부하를 가져옴

  7. Web Application Server • 기존 CGI 방식의 문제점에 대한 극복 • 세션 및 상태 관리 기능 • Transaction 관리 • DB Connection Pooling • Load Balancing • Fault Tolerance

  8. 컴포넌트 기반 개발 • 유연성 및 확장성과 견고함 향상 • 유지보수 용이 • 컴포넌트는 재사용이 가능함 • COM/DCOM, CORBA, EJB 등

  9. 컴포넌트 시스템에서의 Java • Write once, run anywhere를 실현 • 엄격한 표준 스펙(J2EE)에 따른 개발 • 호환가능한 서버에 Deploy 가능 (Write once, deploy anywhere) • 실제로는 서로다른 App. Server 간에는 Bean 호환이 안된다. • Component 개발에 적합한 객체 지향형 언어

  10. Enterprise Java Beans • EJB는 Server-side의 분산 컴포넌트 시스템에 대한 표준 스펙 • JPE(Java Platform for Enterprise) API에 근간 – RMI, JNDI, JTS, JDBC

  11. EJB Architecture • EJB Server • EJB Container • EJB Component (Classes)

  12. EJB Architecture Diagram EJB Server EJB Container EJBHome Create() Remove() EJBean Business Logic EJBObject Business Method Client Transaction, Naming, Persistence Services

  13. EJB Server • EJB Container 관리와 System service에 access를 제공하는 Process나 Application • Security,Naming, Persistency, Transaction Service를 제공하여야 한다. • Vendor 특유의 기능 제공 가능 • EJB Container에 대한 관리

  14. EJB Container • EJB class & instance(Component) 에 대한 관리 • Bean class에 대한 트랜잭션 관리, lifecycle 관리, 보안관리 등 수행

  15. Container에 대한 정의 • Session Bean에 대한 이차 저장장치로의 Swapping • Entity Bean에 대한 persistence 관리 • Home Object의 생성과 Lookup Service • JNDI 로 접근 가능한 Home Object • Bean의 생성, 초기화, 삭제 • Business Method가 적절한 Transaction Context 하에서 실행되도록 함 • 기본적인 보안 서비스의 구현 • Home Object와 EJBObject에서 RMI가 가능하도록 stub와 skeleton 클래스 생성

  16. Home Interface • Enterprise Beans에 대한 Factory기능 • Enterprise Bean은 Home Interface에 의해 생성, 삭제 • Home Object라 불리는 클래스에 의해 구현됨 (컨테이너 벤더 제공)

  17. Locating Home Interface • Home Interface에 대한 reference는 JNDI-service를 통해 access 가능 • Locating : 이미 인스탄스화 되어있는 객체에 대한 reference를 얻는 것을 의미한다.

  18. Home Interface Methods • Enterprise Bean에서 정의된 ejbCreate() 와 같은 메쏘드는 동일한 signature로 Home interface에서도 선언되어야 한다. • EntityBean에서는 추가적으로 finder Method를 정의할 수 있다. • Container vendor는 Home interface를 implements하는 Home Object를 제공하여야 한다.

  19. Remote Interface • EJBObject 인터페이스를 상속받아 생성 • EJB Class의 메쏘드와 동일한 시그너춰를 가지는 메쏘드를 정의하여야 함 • EJB Object는 RMI remote interface를 implement한다. • Container Vendor는 EOBObject의 구현부분을 제공하여야 한다.

  20. Session Bean • 클라이언트 코드를 서버상으로 확장 • 홈인터페이스를 통해 액세스 되고 클라이언트의 커넥션에 속한 EJB • 세션빈의 인스탄스는 서로 다른 클라이언트간에 공유되기 힘듬 • 클라이언트 세션관리 및 상태 관리 가능 • 클라이언트 레퍼런스가 없을 경우 지속적이지 못함 • 비즈니스 로직을 포함

  21. Stateful vs. Stateless Session Bean • Stateful 세션빈과 Stateless 세션빈의 비교

  22. Stateful vs. Stateless Session Bean

  23. Entity Bean • 데이터를 표현하는 EJB • DB Table의 한 row를 표현(view도 bean이 될 수는 있다.) • 한 클라이언트에 종속적이지 않음 • 영구적 저장장치에 지속성이 있음 • 세션빈과의 비교 • 세션빈은 클라이언트와 1:1 관계 • 엔터티빈은 table의 row와 1:1 관계

  24. Session Bean과 EntityBean 관계 DB table Entity Bean Session Bean Entity Bean Row 1 Client Row 2 Method Call Entity Bean Row 3 Row 4 Session Bean Client Entity Bean Row 5 Method Call Entity Bean

  25. Entity Bean의 종류

More Related