본문 바로가기

Spring45

#5 스프링 MVC 구조 이해 스프링 MVC 구조 이해 1. 스프링 MVC 전체 구조 스프링 MVC의 전체 구조는 기존에 서블릿으로 구현해봤던 MVC패턴과 같다. [스프링 MVC 구조] 스프링 MVC에서 프론트 컨트롤러 역할은 DispatcherServlet이 담당한다. 스프링 MVC의 큰 강점은 DispatcherServlet 코드의 변경 없이, 원하는 기능을 변경하거나 확장할 수 있다는 점이다. 아래와 같은 주요 인터페이스만 구현해서 DispatcherServlet에 등록하면 나만의 컨트롤러도 만들 수 있다. · 주요 인터페이스 목록 - 핸들러 매핑 : org.springframework.web.servlet.HandlerMapping - 핸들러 어댑터 : org.springframework.web.servlet.HandlerAd.. 2021. 6. 30.
#4 MVC 프레임워크 MVC 프레임워크 1. 프론트 컨트롤러 패턴 [프론트 컨트롤러 도입 전] 프론트 컨트롤러 도입전에는 공통된 작업을 각 컨트롤러를 호출할 때마다 처리하였다. [프론트 컨트롤러 도입 후] 프론트 컨트롤러 도입 시, 기존의 공통된 작업을 프론트 컨트롤러가 처리하고 필요한 컨트롤러를 실행한다. 2. 프론트 컨트롤러 도입 - 기본 프론트 컨트롤러는 다음과 같이 동작한다. [프론트 컨트롤러 도입 - 기본] 우선 프론트 컨트롤러에서 URL을 매핑한 뒤 알맞은 컨트롤러를 조회 한다. 조회된 컨트롤러를 호출해서 로직을 실행시키고 컨트롤러에서 JSP로 모델을 넘긴다. [컨트롤러 인터페이스 - 기본] public interface ControllerV1 { void process(HttpServletRequest reque.. 2021. 6. 29.
#3 JSP & MVC 패턴 적용 JSP & MVC 패턴 적용 1. 서블릿 단독 사용 문제점 회원 관리 웹 애플리케이션을 만들기 위해 관련된 몇가지 객체를 만들었다고 하자. · Member(username, age) : 회원 이름과 나이를 저장하는 객체 · MemberRepository() : 회원 정보가 저장되는 객체 (싱글톤) 이제 서블릿으로 회원 등록 폼을 만든다고 하자. [회원 등록 폼 - 서블릿] @WebServlet(name = "memberFormServlet", urlPatterns = "/servlet/members/new-form") public class MemberFormServlet extends HttpServlet { private MemberRepository memberRepository = MemberRe.. 2021. 6. 28.
#2 서블릿 서블릿 1. 서블릿 환경 구성(스프링 부트) 스프링 부트는 서블릿을 직접 등록해서 사용할 수 있도록 @ServletComponentScan을 지원한다. [@ServletComponentScan] @ServletComponentScan //서블릿 자동 등록 @SpringBootApplication public class ServletApplication { public static void main(String[] args) { SpringApplication.run(ServletApplication.class, args); } } [서블릿 예제] @WebServlet(name = "helloServlet", urlPatterns = "/hello") public class HelloServlet exte.. 2021. 6. 23.