Presentation is loading. Please wait.

Presentation is loading. Please wait.

Architecture.

Similar presentations


Presentation on theme: "Architecture."— Presentation transcript:

1 Architecture

2 Architecture – Non EJB Architecture

3 장점!! Architecture – Non EJB Architecture
Servlet Engine에서 서비스 가능. - Cheaper License, Easier administration. Application Server, Servlet Engine에 대해 더 좋은 Portability. Simpler Implemenation - POJO business Object, No JNDI lookup 번거로웠던 Deployment descriptors가 필요없음 Quicker code-deployment cycle. 단지 war파일 하나만 deploy하면 됨

4 단점!! Architecture – Non EJB Architecture Remote 분산환경에 대한 지원이 부족.
표준화된 환경과 관리 부족. 유지 보수의 어려움. Business Service Layer에 대한 불명확함. EJB의 선언적인 Transaction 관리와 같이 미리 제공하는 기능이 없음. 필요한 기능이 있을 때마다 구현 필요. Application이 점점 커짐에 따라 Application의 일관성 부재 Testability가 EJB보다 좋을 수 있으나 경우에 따라 다름.

5 Architecture – Classic EJB Architecture

6 장점!! Architecture – Classic EJB Architecture 정형화된 Service Layer 제공
선언적인 Transaction 관리와 같은 EJB 서비스 제공 Business Object를 여러 서버에 분산이 가능 많은 개발자들이 개발에 익숙한 상태

7 단점!! Architecture – Classic EJB Architecture
실행속도와 개발속도등 여러 부분에서 상당한 overhead가 발생함. OO(Object Oriented)의 제한된 구현만이 가능함. 테스트하기 어려움. 항상 EJB Container에서만 테스트가 가능함.

8 Architecture – Local EJB Architecture

9 장점!! Architecture – Local EJB Architecture
분산환경을 제외한 Remote EJB 아키텍처의 모든 강점을 제공 RemoteException을 처리하지 않아도 됨

10 단점!! Architecture – Local EJB Architecture Remote 분산환경을 제공하지 않음
테스트하기 어려움. 항상 EJB Container에서만 테스트가 가능함. 아키텍처가 여전히 복잡함

11 Architecture – Lightweight Container Architecture

12 장점!! Architecture – Lightweight Container Architecture
A simple but powerful Horizontal scalability는 높음. EJB보다 배우기 쉬우며, Configuration 또한 쉽다. AOP의 지원으로 인해 선언적인 Transaction 관리와 같이 EJB에서 지원하던 기능들의 지원이 가능함.

13 장점!! Architecture – Lightweight Container Architecture
Servlet Engine에서 실행이 가능함. Application Server와 Servlet Engine의 Portability 높음. IoC(Inversion of control)을 통한 Business Object의 관리가 용이함. POJO임으로 Testability가 높음. OOP의 제한이 없음.

14 단점!! Architecture – Lightweight Container Architecture
Remote 분산환경을 지원하지 않음. Web service를 통하여 해결 가능. 현재 Lightwegiht Container에 대한 표준이 없음. EJB 아키텍트와 개발자들에 친숙하지 않음.

15 단점!! Architecture – Lightweight Container Architecture
Remote 분산환경을 지원하지 않음. Web service를 통하여 해결 가능. 현재 Lightwegiht Container에 대한 표준이 없음. EJB 아키텍트와 개발자들에 친숙하지 않음.

16 Spring Introduction Spring은 Lightweight Application Framework

17 Spring Introduction

18 Spring Introduction Spring Core : Spring 프레임워크의 근간이 되는 IoC(또는 DI) 기능을 지원하는 영역을 담당하고 있다. BeanFactory를 기반으로 Bean 클래스들을 제어할 수 있는 기능을 지원한다. Spring Context : Spring Core 바로 위에 있으면서 Spring Core에서 지원하는 기능외에 추가적인 기능들과 좀 더 쉬운 개발이 가능하도록 지원하고 있다. 또한 JNDI, EJB등을 위한 Adaptor들을 포함하고 있다.

19 Spring Introduction Spring DAO : 지금까지 우리들이 일반적으로 많이 사용해왔던 JDBC 기반하의 DAO개발을 좀 더 쉽고, 일관된 방법으로 개발하는 것이 가능하도록 지원하고 있다. Spring DAO를 이용할 경우 지금까지 개발하던 DAO보다 적은 코드와 쉬운 방법으로 DAO를 개발하는 것이 가능하다. Spring ORM : Object Relation Mapping 프레임워크인 Hibernate, IBatis, JDO와의 결합을 지원하기 위한 기능이다. Spring ORM을 이용할 경우 Hibernate, IBatis, JDO 프레임워크와 쉽게 통합하는 것이 가능하다.

20 Spring Introduction Spring AOP : Spring 프레임워크에 Aspect Oriented Programming을 지원하는 기능이다. 이 기능은 AOP Alliance 기반하에서 개발되었다. Spring Web : Web Application 개발에 필요한 Web Application Context와 Multipart Request등의 기능을 지원한다. 또한 Struts, Webwork와 같은 프레임워크의 통합을 지원하는 부분을 담당한다. Spring Web MVC : Spring 프레임워크에서 독립적으로 Web UI Layer에 Model-View-Controller를 지원하기 위한 기능이다. 지금까지 Struts, Webwork가 담당했던 기능들을 Spring Web MVC를 이용하여 대체하는 것이 가능하다. 또한 Velocity, Excel, PDF와 같은 다양한 UI 기술들을 사용하기 위한 API를 제공하고 있다.


Download ppt "Architecture."

Similar presentations


Ads by Google