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)
• 스프링은 관점지향 프로그래밍을 위한 풍부한 지원을 한다.
- 애플리케이션 비지니스로직을 시스템의 트랜잭션관리등의 서비스에서 분리
- 애플리케이션 객체는 비즈니스 로직을 수행하는 것 이외는 아무것도 하지않음
컨테이너
• 애플리케이션 객체의 생명주기와 설정을 포함하고 관리한다는 점에서 스프링은 일종의 컨테이너이다.
'Full Stack > Spring' 카테고리의 다른 글
[풀스택 과정] Spring Core : Spring IoC 및 DI(3) (0) | 2023.03.22 |
---|---|
[풀스택 과정] Spring Core : Spring IoC 및 DI(2) (0) | 2023.03.22 |
[풀스택 과정] Spring Core : Spring IoC 및 DI (0) | 2023.03.22 |
[풀스택 과정] Spring 설치(STS 3.9.4 version) (1) | 2023.03.16 |