Spring/MVC(18)
-
6. 스프링 MVC의 RequestMappingHandlerAdapter
[목차]1. 어노테이션 기반 컨트롤러의 유연성: RequestMappingHandlerAdapter 1) 인터페이스 기반 컨트롤러 vs 어노테이션 기반 컨트롤러2) RequestMappingHandlerAdapter 2. HandlerMethodArgumentResolver1) HandlerMethodArgumentResolver2) 컨트롤러 메서드에 맞는 ArgumentResolver 조회3) HandlerMethodArgumentResolver 구현체 3. HandlerMethodReturnValueHandler 1) HandlerMethodReturnValueHandler2) 컨트롤러 메서드에 맞는 ReturnValueHandler 조회 3) 컨트롤러 메서드의 리턴 타입과 어노테이션에 따른 Ret..
2025.05.02 -
5. 스프링 MVC 구조 이해 (3) - 전체 흐름 정리
[목차]🌱 스프링 서버 부팅 과정🌱 DispatcherServlet의 HTTP 요청/응답 과정Part 1: HTTP 요청으로 DispatcherServlet 호출 Part 2: 요청에 맞는 핸들러 실행 과정Part 3: 뷰 랜더링 과정🌱 스프링 서버 부팅 과정1. ApplicationContext 생성 (스프링 DI 컨테이너 시작) 2. 스프링 컨테이너 초기화 단계에서 컴포넌트 스캔 ApplicationContext가 생성되면서 @ComponentScan이 동작@Component, @Controller, @Service, @Repository 등이 붙은 클래스를 찾아 빈으로 등록한다.빈 등록뿐 아니라 빈 생성 → 의존관계 주입 → 초기화 콜백까지 진행되며, 이 일련의 과정은 Spring Contai..
2025.05.01 -
5. 스프링 MVC 구조 이해 (2) - 스프링 MVC로 변환
[목차]직접 만든 MVC 프레임워크 → 스프링 MVC로 변환 1. 기존 컨트롤러: 인터페이스 방식의 컨트롤러 2. 스프링 MVC의 컨트롤러: 애노테이션 방식의 컨트롤러1) 애노테이션 기반 컨트롤러의 등장 배경2) @RequestMapping의 역할과 동작 방식3) 인터페이스 방식과의 비교 정리 (복습) 3. 스프링 MVC의 애노테이션 방식의 컨트롤러 사용하기 VERSION 1. 기본적인 사용법VERSION 2. 컨트롤러 통합하기 VERSION 3. 실용적인 방식으로 개선 1. 기존 컨트롤러: 인터페이스 방식의 컨트롤러 public class MemberFormControllerV3 implements ControllerV3 { @Override public ModelView process(M..
2025.04.29 -
5. 스프링 MVC 구조 이해 (1) - 구조 비교
[목차] 직접 만든 MVC 프레임워크와 스프링 MVC의 구조 비교 1. 전체 구조 2. 스프링 코어와 스프링 MVC 구분3. 직접 MVC 프레임워크 개발 → 스프링 MVC 사용 (관점 전환) 4. Controller 개발 방식: 인터페이스 구현 vs 어노테이션 기반 1) 인터페이스 구현 컨트롤러2) 스프링 MVC의 어노테이션 기반 컨트롤러3) 어노테이션 방식에 대한 자세한 설명4) 인터페이스 구현과 어노테이션 방식 비교 5. DispatcherServlet 구조 살펴보기 1) 스프링 MVC의 프론트 컨트롤러: DispatcherServlet2) 요청 흐름3) 스프링 MVC가 제공하는 인터페이스 - 유연한 확장 가능6. HandlerAdapter 1) 기존과의 차이점2) Controller 인터페이스 사..
2025.04.29 -
4. MVC 프레임워크 만들기
[목차] 프론트 컨트롤러 패턴이란? Version 1. 프론트 컨트롤러 도입 Version 2. View 분리Version 3. Model 추가 Version 4. 단순하고 실용적인 컨트롤러 Version 5. 유연한 컨트롤러 (어댑터 도입) 프론트 컨트롤러 패턴이란?프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음. 입구를 하나로!프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출앞에서 공통적인 처리가 가능프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 됨 즉, 컨트롤러가 서블릿 기술을 몰라도 작동할 수 있다. 스프링 웹 MVC의 DispatcherServlet이 FrontController 패턴으로 구현되어 있음 Version 1. 프론트 컨트롤러 도입 기존 구조를 최대한 ..
2025.04.24 -
3. 서블릿, JSP, MVC 패턴
[목차] 1. 회원 관리 웹 애플리케이션 요구사항 2. 서블릿으로 웹 애플리케이션 만들기 3. JSP로 웹 애플리케이션 만들기 4. 서블릿과 JSP를 사용한 MVC 패턴으로 웹 애플리케이션 만들기 1) MVC 패턴이란? 2) 서블릿과 JSP를 활용한 MVC 패턴 적용 3) Redirect vs Forward 4) JSP에서 제공하는 편리한 문법들: EL, JSTL 5) MVC 패턴의 한계: 프론트 컨트롤러의 등장 1. 회원 관리 웹 애플리케이션 요구사항기능 요구사항: 회원 저장, 회원 전체 목록 조회회원 정보: 이름, 나이 @Getter @Setterpublic class Member { private Long id; private String username; private int ag..
2025.04.22