[부스트코스 웹] Servlet

June·2021년 1월 4일
0

부스트코스

목록 보기
9/23

자바 웹 어플리케이션 (Java Web Application)

  • WAS에 설치(deploy)되어 동작하는 어플리케이션
  • 자바 웹 어플리케이션에는 HTML, CSS, 이미지, 자바로 작성된 클래스 (Servlet도 포함됨, package, 인터페이스 등), 각종 설정 파일등이 포함된다.

자바 웹 어플리케이션의 폴더 구조

Servlet

자바 웹 어플리케이션의 구성요소 중 동적인 처리를 하는 프로그램의 역할
서블릿을 정의해보면

  • 서블릿은 WAS에서 동작하는 Java 클래스이다.
  • 서블릿은 HttpServlet 클래스를 상속받아야 한다.
  • 서블릿은 JSP로부터 최상의 결과를 얻으려면, 웹 페이지를 개발할 때 이 두가지 (JSP, 서블릿)를 조화롭게 사용해야 한다.
    예> 우베 페이지를 구성하는 화면(HTML)은 JSP로 표현하고, 복잡한 프로그래밍은 서블릿으로 구현

Servlet 작성 방법

1. Servlet 3.0 spec 이상에서 사용하는 방법

- web.xml 파일을 사용하지 않음
- 자바 어노테이션(annotation)을 사용
- 앞에서 실습했던 firstweb에서 사용
실습



맨 위 어노테이션을 보면 /ten이라고 적혀있는 것을 알 수 있다. 이는 http://localhost:8080/exam31/ten에서 이 요청을 처리한다는 뜻이다.

매개변수에 request와 response가 있다. response에 setContentType을 통해서 돌려주는 데이터가 어떤 것인지 정의하고 Writer, 즉 통로를 얻어서 거기에 담아준다.

2. Servlet 3.0 spec 미만에서 사용하는 방법

- Servlet을 등록할 때 web.xml 파일에 작성
실습

Servlet 3.0미만에서는 Web Dynamic Project를 생성할 때 디폴트로 web.xml 파일을 생성하도록 되어있다. 그 파일을 열어보면 이러한 코드가 추가되어있다.

이것은 /ten을 찾는 요청이 들어오면 servlet-mapping 부분에서 TenServlet을 찾아내고 이것이 실제 있는 것인지 확인한 후, exam.Tenserlet을 부르는 것이다.

Servlet 생명주기

0개의 댓글