본문 바로가기
JSP & Servlet

Servlet과 WEB-INF 기초

by 스타디아 2022. 12. 18.

기록일: 2022-12-18 

 

#서블릿 코드

일반 Java 코드에서 main()문에 실행코드를 작성했다면 서블릿은 service()에 작성

 

#WEB-INF

WEB-INF 폴더는 서버에서 처리되는 영역으로 클라이언트에 의해 URL로 직접 요청되어서는 안됨. (404 오류 발생)

약속된 매핑 정보로 요청해야 된다.

서블릿 파일도 여기에 둘 것. WEB-INF/classes (약속된 폴더이름임)

 

#서블릿 매핑

서블릿의 매핑 정보는 WEB-INF/web.xml 에서 지정 가능하지만,

톰캣 재기동 필요하고, 공동 작업에서 서버 파일을 수정하는 것은 지양되므로, 코드 내 어노테이션(@) 사용해서 지정할 것

 - 사용법:

서블릿 class 위에 @WebServlet("/main")

이 기능은 Servlet 3.0 이상부터 지원.

- 서블릿 매핑 조건:

import jakarta.servlet.annotation.WebServlet; 필요

web.xml에서 metadata-complete="false" 로 수정해야 사용가능. (web.xml에서의 설정이 다가 아니라고 명시)

 

#import javax.servlet.http.HttpServlet; 오류 발생

import jakarta.servlet.http.HttpServlet; 로 수정하여 해결.