7
right 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 1 - 2007.03.29 2007.03.29 Spring Framework Spring Framework 플플플플플플 플플플 플플플플플플 플플플

2007.03.29

  • Upload
    gazit

  • View
    49

  • Download
    0

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 1 -

2007.03.292007.03.29

Spring FrameworkSpring Framework

플랫폼개발실 김광욱플랫폼개발실 김광욱

Page 2: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 2 -

◆ 목차◆ 목차

1. 참고서적 , 참고사이트

2. 용어

3. 웹어플리케이션 아키텍쳐소개• Non-EJB 아키텍쳐• EJB 아키텍쳐• LightWeight Container 아키텍쳐

4. Spring• 소개• 특징• 장단점

5. Spring Overview

6. Spring 예제 시연

Page 3: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 3 -

◆ 참고서적 , 참고사이트◆ 참고서적 , 참고사이트

♦참고서적Spring 프레임워크워크북 ( 한빛미디어 , 박재성 ) ☞URL

♦참고사이트Javajigi ( 박재성 ) ☞URLYounghoe.Info ( 안영회 ) ☞URLToby's Epril ( 이일민 ) ☞URLEquinox (Matt Raible) ☞URL

Page 4: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 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) - 분산된 환경에서 서버간의 객체를 공유할 방법이 필요할때 내부적으로 사용하는 기술

Page 5: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 5 -

◆ 웹어플리케이션 아키텍쳐 소개◆ 웹어플리케이션 아키텍쳐 소개

♦Non-EJB - EJB 를 사용하지 않는다 . - 명확한 아키텍쳐없이 프로젝트의 성격에 따라 다양하게 아키텍쳐가 나온다 . - 많은 개발자들이 사용하며 , 지금도 많은 프로젝트에서 사용한다 . - UI 계층 , 비지니스계층 , 퍼시스턴스계층으로 나누어 개발하기도 한다 .(MVC) - 서블릿 컨테이너를 사용한다 .

♦EJB - EJB 를 사용한다 . - 분산환경을 지원한다 . - UI 계층과 비지니스계층을 물리적으로 분리하여 어플리케이션 개발의 계층화가 쉽다 . - EJB 는 비지니스로직만 담당하도록 설계되어 있다 .( 트랜잭션 , 페일오버 , 보안을 자동처리 ) - EJB 컨테이너를 사용한다 .

♦LightWeight Container - POJO 를 사용한다 . - 경량컨테이너 아키텍쳐이다 .(EJB 아키텍쳐와 비교시 ) - POJO 를 관리하는 POJO 컨테이너를 가진다 .(POJO 의 생명주기 , 트랜잭션 , 보안지원 ) - POJO 컨테이너역활을 하는게 스프링프레임워크이다 .( 내부에 컨테이너 개념을 가지고 있다 .)- 서블릿 컨테이너를 사용한다 .

Page 6: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 6 -

◆ Spring◆ 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 에 익숙한 개발자들에겐 새로운 아키텍쳐를 배워야하는 부담이 있다 .

Page 7: 2007.03.29

Copyright ⓒ 2007 DKI Technology Co., Ltd. All Rights Reserved| Confidential - 7 -

◆ Spring Overview◆ Spring Overview

♦Spring Overview