본문 바로가기

web/JSP

서블릿 매핑!

첨에 익숙하지 않아서 그렇지 나름 괜찬은 방법인거 같다.
또한 MVC 패턴을 들어가기 위해선 꼭 필요한 방법이기도 하다.(사실 않써도 무관하지만 나중에 파라미터 숨기는 데에도 유용한거 같다.)

서블릿 매핑을 왜 쓰느냐?! 불러올 웹 페이지를 명시적으로 선언해서 보호 하는데 있다. 
1. 위와 같이 파일의 이름을 변형시켜서 현재 실행중인 파일을 알리지 않을수 있다
2. 넘겨지는 파라미터들 또한 숨길수 있어서 접근제한,보안,오류페이지 등을 사용자가 설정할수 있다. 
3. 재컴파일을 하지 않아서 자원을 효율적으로 쓸수 있다.
등등의 편의성을 제공한다.

어떻게 쓰느냐 하면은~

웹 어플리케이션에서는 하나의 DD(Deployment Descriptor - 배포 서술자) 가 있다.
이 DD 안에 서블릿 매핑을 한다. 보통 DD는 web-inf 안의 web.xml로 되어 있다.


위와 같이 되어 있는게 매핑이 된 페이지 들이다. 사용자는 알지 못하지만 이벤트시 각각의 이름에 해당하는 서블릿 파일을 불러오도록 설정 되어 있다.

서블릿 매핑에는 두개 이상의 파일이 필요하다. 먼저 매핑된 페이지를 로드할 페이지와 불릴 페이지다. 

1. form으로 데이터를 받을 서블릿을 호출한다. 여기서 매핑된 이름은 login.do 이다.

2. web.xml에서 <servlet-mapping>태크안에 매핑된 이름을 찾는다. 
<url-pattern>태그로 이루어진 곳이 바로 불린 이름이다. 
여기서 웹컨테이너는 위의 <servlet-name>을 따라간다.

3. 찾은 이름으로  <servlet>태그에서 <servlet-name>의 같은 이름을 찾는다.(위에서 loginServlet로 찾은걸 똑같은 이름을 찾는다.)
그리고 마지막으로 불릴 파일의 경로 or 직접적인 이름 을 찾는다.(여기선 com\my\login.java 파일을 찾는다.)

4. 최종 path 는 다음과 같다.



- 간단하면서도 은근히 헷갈린다. 잘 따라해보면 될것이다. 
- 불릴이름이 jsp 파일이면 실행이 안된다. 무조건 서블릿인 java 파일이여야만 한다.
- 만일 다른 사람의 jsp를 서블릿 매핑을 할경우 java파일을 하나 만들어서 서블릿으로 호출하면 된다.
-  대부분의 url-pattern을 작성시 *.do 파일로 표기 한다.



'web > JSP' 카테고리의 다른 글

JSP 페이지 에러 처리  (0) 2010.10.20
JSP 내장 객체  (0) 2010.10.19
jsp 간단한 계산 스크립트  (0) 2010.10.15
JSP sql sysdate 받기  (0) 2010.10.14
JSP 한글깨짐  (0) 2010.10.13