티스토리 뷰

728x90

우선 servlet을 만들고 실행시키려면 java와 tomcat이 설치되어 있어야 한다.

 

1️⃣ servlet 만들기

- HttpServlet 을 상속 받아 생성한다.

- 저장 시 class이름과 동일하게 이름을 지정하고 java 확장자로 저장한다.

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class MyServlet extends HttpServlet {
    public void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        System.out.println("Hello Servlet!");
    }
}

 

2️⃣ 컴파일하기

- servlet-api.jar라는 라이브러리를 사용하여 컴파일 해준다.

- 라이브러리는 위치는 tomcat - lib - servlet-api.jar

$ javac -cp 라이브러리경로 파일이름

컴파일을 완료하면 아래처럼 class파일이 생긴 걸 확인 할 수 있다.

 

3️⃣ 실행시키기 

- WEB_INF 폴더는 외부에서 요청할 수 있는 폴더가 아니다.

- 실행시키기 위해서는 apache-tomcat-9.0.60/webapps/ROOT/WEB-INF 에 classes 폴더를 생성 한 후, 그 안에 2번째 단계에서 만든 class 파일을 넣어준다. 

- 위 class파일도 절대로 직접적으로 요청 할 수 없기 때문에, 약속 한 매핑 방식으로 요청을 해야한다.

- WEB_INF 의 web.xml 에 아래의 내용을 작성해준다.

<servlet>
  <servlet-name>my</servlet-name>
  <servlet-class>MyServlet</servlet-class> //사용자가 /hello라는 URI로 요청을 하면 실행시킬 class명
</servlet>

<servlet-mapping>
  <servlet-name>my</servlet-name>
  <url-pattern>/hello</url-pattern> //사용자는 /hello라는 URI로 요청을 한다.
 </servlet-mapping>

작성 후 톰캣 재실행

#톰캣-bin으로 디렉토리 이동 후
$ ./shutdown.sh
$ ./startup.sh

그리고 localhost:8080/hello로 이동하면 하얀 페이지가 나오는데, 아직 사용자에게 돌려주는 어떤 처리를 한 것이 없기 때문에 정상 작동이라고 볼 수 있다 ! 오류가 안난다면 ok! 😆

그래도 정말 실행이 된건가 확인해보고 싶다면, 톰캣 로그에서 확인 해보면 된다! 그러면 작성한 대로 "Hello Servlet!"이 출력 된 것을 볼 수 있다.

$ cd tomcat/logs
$ cat catalina.out

'백엔드 > servlet' 카테고리의 다른 글

servlet filter 만들기  (0) 2022.03.27
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함