layout: post title: 자바 웹API 서버 구성하기 (下) categories: [dev] author: 문재범 email: [email protected] date: 2022-04-01 tag:


<!-- @format -->

자바 웹API 서버 구성하기 (下)

上편에서는 기본적인 스프링 기반의 웹 애플리케이션 개발 환경 구성에 대해서 알아봤습니다. 下편에서는 스프링 설정과 logback 설정, 그리고 docker 배포 구성에 대해서 설명하겠습니다.

먼저 스프링의 설정 방법에는 두 가지 설정 방법이 있습니다. 하나는 xml 파일을 이용한 설정 방법이고 나머지 하나는 Java 파일을 이용한 설정 방법입니다.

두 가지 방식 모두 많이 사용되지만, Java 파일을 이용한 설정 방법은 IDE에서 Java 문법 체크를 해주기 때문에 오타로 인한 실수를 줄일 수 있습니다. 그래서 저는 Java 파일을 이용해서 스프링 설정 방법을 설명해드리겠습니다.

스프링 설정

먼저 스프링 애플리케이션을 서블릿에 등록해야합니다. 아래에 도식을 보면 무슨 의미인지 이해하시기 쉽습니다.

servlet.png

톰캣은

  1. init 메소드를 통해서 서블릿을 구동하고 초기화합니다.
  2. service 메소드를 호출해서 서블릿이 브라우저의 요청을 처리하도록 합니다. service 메소드 안에서 HTTP의 요청이 GET이면 doGet 메서드를 호출하고.. POST라면 doPost 메서드를 호출합니다.
  3. 서버는 destory 메소드를 통해서 서블릿을 제거합니다. 주로 서버가 중단되거나 대기 상태로 유지되는 경우에 해당 메소드가 발생하게 됩니다.

결국 톰캣 위에서 작동하는 스프링 프레임워크도 서블릿으로써, 서블릿 컨테이너에 등록이 되어야 1차 적으로 WAS가 사용자의 요청에 맞는 응답을 줄 수 있게 됩니다.

dispatcher.png