Java/Spring(10)
-
Spring MVC 내부 동작 구조 (Deep Dive)
❶ 전체 러닝타임 흐름(요청 → 응답) 한눈에 보기요청이 들어오면 서블릿 컨테이너(Tomcat)가 먼저 받고, DispatcherServlet으로 전달합니다. 그 다음 Spring MVC 내부 컴포넌트들이 다음 순서로 협업합니다.Filter Chain (예: CharacterEncodingFilter, HiddenHttpMethodFilter)DispatcherServlet 진입HandlerMapping으로 핸들러(컨트롤러 메서드) 탐색HandlerAdapter가 핸들러 실행 준비 (인자 바인딩/리턴 처리)HandlerMethodArgumentResolver로 파라미터 주입컨트롤러 메서드 실행 → String 뷰이름 / ModelAndView / @ResponseBody 등 반환HandlerMethodR..
2025.11.04 -
[LG U+ 유레카 3기]Spring MVC 요청 흐름 & 매핑 실습 — Boot 위에서 레거시 구조 이해하기
0️⃣ 실습 개요오늘은 STS4(Spring Boot 환경)에서 Spring MVC 구조를 직접 구현하고, 요청 매핑(@RequestMapping, @GetMapping 등), PathVariable, 와일드카드 매핑을 실습했다.Spring Boot 위에서 실행했지만, 내부 동작은 전통적인 Spring Legacy MVC 구조였다. 즉, DispatcherServlet 중심의 JSP 기반 MVC 흐름을 Boot 환경에서 재현한 형태다.1️⃣ pom.xml (의존성 설정)JSP를 사용하기 위해서는 Spring Boot 기본 Web Starter 외에 tomcat-embed-jasper 의존성을 반드시 추가해야 한다. 4.0.0 org.springframework.boot spring-boo..
2025.11.04 -
[LG U+ 유레카 3기]Spring DI | XML → Annotation → Java Config → Has-A → Interface + Qualifier 실습 정리
이 포스팅은 Spring Framework의 DI(Dependency Injection, 의존성 주입)을 처음부터 끝까지 한 단계씩 밟아가며 실습으로 정리한 내용입니다. 단순히 코드만 보여주는 게 아니라, 각 방식이 어떤 철학에서 출발했는지, 코드가 내부적으로 어떻게 동작하는지까지 — 아주 상세하게, “스프링 초보 개발자도 완벽히 이해할 수 있도록” 정리했습니다.❶ 스프링 DI란?DI는 Dependency Injection, 즉 의존성 주입을 의미합니다. 이 개념은 IoC (Inversion of Control, 제어의 역전)이라는 큰 철학 아래 존재합니다.일반적으로 자바에서 객체를 사용할 때는 이렇게 작성하죠.public class Store { private Pencil pencil = new ..
2025.11.03 -
[LG U+ 유레카 3기]Spring Proxy | 프록시 기반 AOP 원리 이해
❶ 프록시란?프록시(Proxy)는 ‘대리인’이라는 뜻으로, 실제 객체(Real Object)를 감싸서 대신 메서드를 실행하고, 그 과정에서 공통 기능(전처리, 후처리 등)을 삽입하는 역할을 한다. 스프링은 트랜잭션, 캐시, 보안 같은 부가기능을 삽입할 때 이 프록시 방식을 사용한다. ❷ 코드 구조 요약package com.mycom.myapp.proxy;import java.lang.reflect.Proxy;public class Test { public static void main(String[] args) { MyIF myIF = new MyIFImpl(); String param1 = "abc"; String param2 = null; MyI..
2025.11.03