Contents
1. 톰켓과 web.xml
톰켓은 Servlet Container로 Servlet을 실행하여 동작
웹 프로젝트 폴더를 생성할 때 같이 생성한 web.xml 파일에는 클라이언트가 어떤 url을 요청할 때 어떤 servlet 파일을 실행시킬지에 대한 mapping 정보가 담긴 파일.
톰켓은 web.xml 에 매핑되어진 자바 파일을 Servlet 으로 변환, 그 Servlet을 실행하여 요청에 응답
이 때 Servlet으로 변환되기 위해 개발자는 Servlet이라는 것을 명시해줘야 함!!
2. Servlet 기본구조
Servlet으로 변환되기 위해서는 기본적으로 다음의 구조를 만족해야한다
- 톰켓에서 만들어 놓은 HttpServlet 클래스를 상속
- HTTP 요청 메소드인 Get, POST 방식을 처리하기 위한 doGet()과 doPost() 를 오버라이딩
( 매개변수로는 HttpServletRequest, HttpServletResponse 클래스를 정의)
3. URL 과 Servlet 매핑 - web.xml
톰켓은 web.xml 파일을 확인하여 Servlet 클래스를 맵핑한 후 , 이를 실행
# 맵핑 방법
1. web.xml 에 직접 작성
2. 어노테이션 이용
4. Request / Response
doGet(), doPost() 메소드는 HTTP요청을 처리하는 메서드
각 메서드는 HttpServletRequest, HttpServletResponse 두 객체를 파라미터로 명시.
이 두 객체는 톰켓에서 미리 작성해둔 클래스이며, HTTP 요청과 응답에 대한 정보들을 모두 갖고 있다.
5. Servlet 객체로 응답하기 - JSP가 필요한 이유
Servlet은 클라이언트의 요청을 받아 비지니스 로직 처리, DB 처리, 다시 사용자에게 응답하는 것이 주 역할
요청을 관리한다는 점에서 MVC패턴의 컨트롤러 역할을 한다
> 왜 JSP를 사용할까?
JSP 파일을 Servlet으로 작성한다면 너무 괴로운 일이다..!
Servlet으로 응답 페이지를 보여주는 것은 비효율적이다.
-> HTML 문서에 Java코드를 넣을 수 있는 JSP가 필요하다!
"모든 요청은 Servlet으로 받고 클라이언트에게 보여줄 페이지는 JSP로 작성한다"
Servlet 이 아닌 JSP에서 직접 요청을 받아서 JSP로 응답하는 방법을모델1이라 한다
즉, Controller와 View를 모두 JSP에서 담당
이번 글의 방식처럼
Serlvet으로 요청을 받고, JSP로 응답하는 방법을 모델2라 한다.
[참고]
'IT 공부 > JSP, Servlet' 카테고리의 다른 글
방명록 - 모델2 (0) | 2019.05.16 |
---|---|
방명록 - 모델1 적용 (0) | 2019.05.16 |
[Java EE] 톰켓 (0) | 2019.05.16 |