컨트롤러: 페이지 화면 전환 또는 동작 제어
서비스 : 유스케이스로 표현되는 트겅 업무처리, 트랜잭션 기점
도메인 : 서비스로 부터 기능을 실행하는데 기능들의 클래스의 집합
프리젠테이션 , 데이터 엑세스 레이어들이 변경되어도 비즈니스 로직을 영향을 최소화
결합이 약한 설계구현(인터페이스 도입)
사용자 인터페이스 와 컨트롤러 제공
컨트롤러: UI fmf 통해 사용자의 입력을 받아 로직을 호출하고 결과 반환
JSP만 구현 개발하고 Java Bean을 포함 개발
비즈니스 로직 혼재되어 복잡도 높음
모델: 뷰에 필요한 비즈니스 영역 로직 처리
뷰: 프레젠테이션 뷰
= 컨트롤러: 사용자 입력 처리 흐름 제어
유즈케이스의 특정 업무 처리를 위해 서비스와 도메인 구성
로직을 포함하지 않고 단순히 값만 저장
VO: Value Object
DTO: Data Transfer Object
프리젠테이션 과 비즈니스 로직 사이에 존재
실제 하드코딩되어있는 서비스 코드를 프레임워크에 선언을 통해서 트랜잭션 관리
DB 액세스 프레임 워크
뭐가 문제??
오브젝트 생명 주기
서블릿 호출로 성능 저하및 메모리 문제
해결: DI (Dependency Injection) 필요한 의존성만 부여
부품화 문제
비의존성을 위해서 기술 필요와 new를 사용하지않고 인터페이스 구현
해결: DI (Dependency Injection)필요한 의존성만 부여
POJO (Plain Old Java Object)
IoC ( Inversion of Control)