1 / 7

2007.03.29

Spring Framework. 플랫폼개발실 김광욱. 2007.03.29. ◆ 목차. 참고서적 , 참고사이트 용어 웹어플리케이션 아키텍쳐소개 Non-EJB 아키텍쳐 EJB 아키텍쳐 LightWeight Container 아키텍쳐 Spring 소개 특징 장단점 Spring Overview Spring 예제 시연. ◆ 참고서적 , 참고사이트. 참고서적. Spring 프레임워크워크북 ( 한빛미디어 , 박재성 ) ☞URL. 참고사이트.

gazit
Download Presentation

2007.03.29

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. Spring Framework 플랫폼개발실 김광욱 2007.03.29

  2. ◆ 목차 • 참고서적, 참고사이트 • 용어 • 웹어플리케이션 아키텍쳐소개 • Non-EJB 아키텍쳐 • EJB 아키텍쳐 • LightWeight Container 아키텍쳐 • Spring • 소개 • 특징 • 장단점 • Spring Overview • Spring 예제 시연

  3. ◆ 참고서적, 참고사이트 • 참고서적 Spring 프레임워크워크북 (한빛미디어, 박재성) ☞URL • 참고사이트 Javajigi (박재성) ☞URL Younghoe.Info (안영회) ☞URL Toby's Epril (이일민) ☞URL Equinox (Matt Raible) ☞URL

  4. ◆ 용어 • 용어 Architecture - HW, SW의 설계사상이나 논리구조 Framework - 애플리케이션개발의 바탕이 되는 템플릿과 같은 역활을 하는 클래스와 인터페이스의 집합 EJB(Enterprise Java Beans) - 분산환경에서 사용되는 객체 (세션빈, 엔티티빈, 메시지드리븐빈) POJO(Plain Old Java Object) - 우리가 흔히 JavaBean으로 알고 있는 클래스 - Servlet, EJB와 같은 특정인터페이스에 종속적이지 않는 모든 클래스 IOC(Inversion of Control) = DL(Dependency Lookup) + DI(Dependency Injection) - 역제어, 제어의 역전현상 - 객체의 생성과 생명주기(Life Cycle)에 대한 객체에 대한 제어권이 바뀜을 의미 JNDI(Java Naming and Directory Interface) - 분산된 환경에서 서버간의 객체를 공유할 방법이 필요할때 내부적으로 사용하는 기술

  5. ◆ 웹어플리케이션 아키텍쳐 소개 • Non-EJB - EJB를 사용하지 않는다. - 명확한 아키텍쳐없이 프로젝트의 성격에 따라 다양하게 아키텍쳐가 나온다. - 많은 개발자들이 사용하며, 지금도 많은 프로젝트에서 사용한다. - UI계층, 비지니스계층, 퍼시스턴스계층으로 나누어 개발하기도 한다.(MVC) - 서블릿 컨테이너를 사용한다. • EJB - EJB를 사용한다. - 분산환경을 지원한다. - UI계층과 비지니스계층을 물리적으로 분리하여 어플리케이션 개발의 계층화가 쉽다. - EJB는 비지니스로직만 담당하도록 설계되어 있다.(트랜잭션, 페일오버, 보안을 자동처리) - EJB 컨테이너를 사용한다. • LightWeight Container - POJO를 사용한다. - 경량컨테이너 아키텍쳐이다.(EJB 아키텍쳐와 비교시) - POJO를 관리하는 POJO컨테이너를 가진다.(POJO의 생명주기, 트랜잭션, 보안지원) - POJO컨테이너역활을 하는게 스프링프레임워크이다.(내부에 컨테이너 개념을 가지고 있다.) - 서블릿 컨테이너를 사용한다.

  6. ◆ Spring • 소개 - 2002년 Rod Johnson이 자신의 책(☞URL)에 스프링의 개념을 소개. - 2003년 오픈소스 스프링프레임워크 프로젝트가 시작됨. - 2004년 스프링정식버전출시 (1.0 -> 1.1 -> 1.2 - > 2.0) • 특징 - 프레임워크내부에 컨테이너개념을 가지고 있다. (스프링 프레임워크 = 스프링컨테이너 = POJO컨테이너 = IOC컨테이너) cf)Pico, HiveMind - 스프링이 관리하는 POJO객체는 기본적으로 Singleton으로 관리된다. - 각 계층간 통신은 인터페이스를 기반으로 한다. • 장단점 - EJB에 비해서 쉽다. - 서블릿컨테이너에서 실행하므로 이식성이 뛰어나다. - 특정인터페이스(Servlet Spec, EJB Spec)에 비종속적인 POJO기반으로 테스트가 용이하다. - AOP (☞URL) 의 지원으로 EJB컨테이너에서만 가능했던 기능을 지원하는 것이 가능하다. - 분산환경을 지원하지 못한다.( -> Web Services같은 분산환경기술을 이용하여 극복가능) - LightWeight 컨테이너에 대한 표준이 아직 없다. - Non-EJB와 EJB에 익숙한 개발자들에겐 새로운 아키텍쳐를 배워야하는 부담이 있다.

  7. ◆ Spring Overview • Spring Overview

More Related