스프링 MVC - 환경설정

이지윤·2022년 4월 10일
0

스프링 MVC 환경 설정

라이브러리 설정

  • spring-webmvc를 설정 -> 스프링 웹과 기타 스프링 프레임워크 의존 모듈(spring-context)에 대한 의존 관계도 함께 처리
  • 스프링 MVC는 Bean Validation 구조체를 이용해 자바 빈(VO)값의 유효성을 애노테이션을 통해 검증

웹 어플리케이션 컨텍스트 등록 설정

  • 웹 애플리케이션에 사용할 2가지 애플리케이션 컨텍스트 등록 (web.xml)

(1) ContextLoadListner 클래스

  • 서블릿 컨테이너에 ContextLoadListner 클래스 등록
  • 서비스 계층 이하의 빈(@Service, @Repository 등)을 등록하기 위한 클래스

(2) DispatcherServlet 클래스

  • 서블릿 컨테이너에 프론트 컨트롤러인 DispatcherServlet 클래스 등록
  • 컨트롤러(@Controller 또는 @Component) 빈을 등록하기 위한 클래스
    <web.xml>

CharacterEncodingFilter 설정

  • 한국어 사용을 위한 문자 인코딩 방식을 설정

컨트롤러 기분 구조

  • 모든 컨드롤 클래스에는 @Controller 애노테이션을 설정
    • 메서드 별로는 @RequestMapping 사용하여 URL 매핑을 설정
    • @RequestParam은 HTTP 요청 파리미터를 메소드의 파라미터로 전달받을 때 사용
    • 매서드 반환 값으로는 View 이름을 반환

컨트롤러 등록

  • DispatcherServlet 클래스의 설정 파일인 servlet-context.xml에서 컨트롤러 등록

DispacherServelet 클래스 설정

  • <annotation-driven />
    • 스프링 MVC를 이용하는데 필요한 컴포넌트 빈(HandlerMapping) 등록을 자동으로 수행
    • 패키지 내부에서 찾은 빈(컨트롤러)과 URI를 맵핑
  • <context:component-scan base-package="org.tukorea.web.controller" />
    • base-package 내부의 클래스에서 @Controller 지정된 컨트롤러를 검색하여 빈으로 등록

DispatcherServlet 설정

  • 정적 리소스 파일 설정 : resources 태그 사용
  • 뷰 리졸브 설정
    • JSP 뷰 리졸브 설정 - org.springframework.web.servlet.view.InternalResourceViewResolver
    • 뷰 객체 이름 생성을 위한 접두사, 접미사 지정

ContextLoadListner 설정

  • @Service 지정된 클래스를 빈으로 등록
    <root-context.xml>
profile
초보자

0개의 댓글