@WebServlet(name="helloServlet", urlPattern="/hello") public class HelloServlet extends HttpServlet{ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ System.out.println("HelloServlet.service"); System.out.println("request = " + request); System.out.println("response = " + response); String username = request.getParameter("username"); System.out.println("username = " + username); response.setContentType("text/plain"); response.setCharacterEncoding("utf-8"); response.getWriter().write("Hello " + username); } }
🔸 @WebServlet으로 매핑정보를 등록, HttpServlet을 상속하고 service() 구현
🔸 매핑된 URL로 HTTP 요청이 오면 서블릿 컨테이너는 service메서드를 실행한다.
🔸 HTTP 요청 메시지를 로그로 확인하려면 application.properties에 아래를 설정해준다.logging.level.org.apache.coyote.http11=debug
🔸 스프링 부트 실행 ➡️ 내장 톰캣 서버 실행 ➡️ 서블릿 컨테이너(톰캣이 내부에 가지고 있음)를 통해서 서블릿 생성
🔸 HTTP 요청이 오면 ➡️ request, response객체를 만들어서 helloServlet 호출 ➡️ service메서드 호출 ➡️ 작업 수행 ➡️ response 정보를 가지고 HTTP 응답 메시지 생성
🔸 main > webapp > index.html
🔸 localhost:8080/index.html로 접속해도 되지만,
localhost:8080으로만 접속해도 index.html이 열린다.