web.xml에서 Mapping 설정
<servlet> <servlet-name>Ch3 Beer</servlet-name> <servlet-class>com.example.web.BeerSelect</servlet-class> </servlet> <servlet-mapping> <servlet-name>Ch3 Beer</servlet-name> <url-pattern>/SelectBeer.do</url-pattern> </servlet-mapping>
Mapping 설정 순서
- 사용자는 form 화면에서 색깔을 선택하고, 제출(Summit) 버튼을 선택하면 Browser는 /Beer-vl/SelectBeer.do 와 같은 URL을 생성한다.
- Container는 DD의 <Servlet-mapping> 항목에서 /SelectBeer.do라는 값을 가진 <url-pattern> 을 찾는다. 여기서 /는 Context Root를 의미하며, SelectBeer.do는 자원의 논리적인 이름이다.
- Container는 DD에서 <url-pattern>과 쌍을 이루는 <servlet-name>의 값 Ch3 Beer를 기억해두고 Container는 내부 Servlet명과 여기에 일치하는 <sevlet> 항목을 Mapping 한다.
- Container는 <servlet-name> 항목 값 Ch3 Beer와 일치하는 <servlet> 항목이 있는지 검색한다.
- <servlet> 항목을 찾았으면 <servlet-class> 항목 값을 읽어오고 Servlet이 초기화 된 적이 없다면, Container는 Class를 Load하고 초기화한다.
- Container는 요청을 처리할 새로운 Thread를 시작하고 Servlet의 Service() Method에 Request 객체 참조를 인자로 넘긴다.
- Thread가 완료되면 Client에게 Web Server를 통해 응답을 보낸다.
C3-110, C3-112
'개발 > Servlet' 카테고리의 다른 글
BeerAdvisor 제일 첫 화면 HTML (0) | 2011.07.27 |
---|---|
javax.servlet.servletrequest (0) | 2011.07.25 |