지난 번(007)에 만들었던 class 파일은
\WEB-INF(없으면 만들어야 함.)\classes <- 폴더 안에 넣어야 함.
(그런데 만약, 서블릿 클래스를 만들 때 패키지가 있었다면,
classes 폴더 안에 패키지 폴더를 만들고 그 안에 넣어야 함.)
\WEB-INF : 서버쪽에서만 사용할 수 있음.
클라이언트 측에서 이 폴더 안쪽을 들여다 볼 수 없고, 요청할 수도 없음.
비공개 영역에 클래스 파일을 넣음.
이걸 사용자가 요청할 수 있게 하는 방법
: 톰캣에서 URL로 사용자의 요청을 받고, 요청 받은 것과 매핑된 서블릿 코드를 실행하여 돌려주는 방식.
http://localhost:8080/nana.txt
http://localhost:8080/WEB-INF/nana.txt
동일한 파일을 두 곳에 넣었을 때 위의 링크는 실행되는데, 아래 링크는 404가 발생.
실제로 파일이 없어서가 아니라, WEB-INF 폴더는 절대로 외부에서 요청할 수 있는 디렉토리가 아니기 때문.
그래서 설정, 프로그램 코드 등의 경우 이 폴더 안에 넣음.
WEB-INF 폴더 안에 있는 web.xml 파일을 편집. 아래의 내용을 추가한 후, 톰캣 재실행.
<servlet>
<servlet-name>na</servlet-name>
<servlet-class>Nana</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>na</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
실제로 hello라는 파일이 있는 게 아니기에, 요청을 받은 웹 서버는 파일을 찾아보고 없어서 WAS에 넘기면
WAS는 자신의 매핑 정보를 찾아서 hello가 존재함을 알고 그것에 맞는 서블릿 코드를 실행함.
'Servlet&JSP' 카테고리의 다른 글
010 - 웹 개발을 위한 이클립스 IDE 준비하기 (0) | 2020.05.09 |
---|---|
009 - 서블릿(Servlet) 문자열 출력 (0) | 2020.05.07 |
007 - 처음으로 서블릿 프로그램 만들어보기 (0) | 2020.05.06 |
006 톰캣 9 설치하기 (3/3) - Context 사이트 추가하기 (0) | 2020.05.04 |
005 톰캣 9 설치하기 (2/3) - 웹문서 추가해보기 (0) | 2020.05.02 |