728x90
728x90

1. Model 1 Developnemt

문제점

• 프리젠테이션 로직과 비지니스 로직의 혼재로 JSP 복잡성증가
• 비지니스 로직과 화면로직은 분리되어야 함
• JSP의 목적은 VIEW에 있는데 너무 많은 일을 함
• 유지보수의 어려움

2. Model2  사용의 필요성 제기

모델 2의 특징

• Model-View-Controller 역할에 기반한 구조

• 모델과 view의 분리

• View 와 Model의 연결역할을 Controller가 담당
• 비즈니스 로직과 화면로직의 분리

 

 

 

 

 

 

프레임워크의 등장

• 프레임워크를 이용하면 프로그램의 작성 분량을 줄임
• 프로그램의 작성방법에 대한 관습을 강제로 제어
• 가이드와 표준에 의한 개발을 따르도록 제어
• 읽기 쉬운 프로그램 작성

 

→ MVC 기반의 Struts FrameWork 등장

 

3. Spring 소개

• 2003년 2월 Rod Johnson이 만든 오픈소스 프레임워크
• 복잡한 엔터프라이즈 애플리케이션 개발을 겨냥
• 자바빈즈를 사용하지만 EJB에서 가능했던 일 가능
• 단순성,테스트 용이성, 느슨한 결합성의 측면에서 스프링의 이점을 얻을 수 있음

 

스프링은 경량의 제어 역행과 관점지향 컨테이너 프레임워크이다.

 

 

경량

• 전체 스프링의 크기는 1MB남짓한 하나의 JAR 파일, 스프링에 의해 발생하는 부하는 무시해도 되는 수준

제어 역행

• 제어역행(IoC, inversion Of Control)라는 기술을 통해 애플리케이션의 느슨한 결합을 도모한다. IoC가 적용되면 객체는 의존하는 다른 객체를 생성, 찾는대신 수동적으로 의존성을 받음

 

관점지향(AOP)

• 스프링은 관점지향 프로그래밍을 위한 풍부한 지원을 한다. 
  - 애플리케이션 비지니스로직을 시스템의 트랜잭션관리등의 서비스에서 분리
  - 애플리케이션 객체는 비즈니스 로직을 수행하는 것 이외는 아무것도 하지않음

 

컨테이너

• 애플리케이션 객체의 생명주기와 설정을 포함하고 관리한다는 점에서 스프링은 일종의 컨테이너이다.

 

728x90
300x250