1. 서블릿 속성(attribute)
1) ServletContext, HttpSession, HttpServletRequest 객체에 바인딩되어 저장된 객체(정보)
- 각 서블릿의 API의 setAttribute(String name, Object Value)로 바인딩함.
- 각 서블릿의 API의 getAttribute(String name)으로 접근함.
- 각 서블릿의 API의 removeAttribute(String name)으로 속성을 제거함.
2. 서블릿 스코프(scope)
1) 서블릿 API에 바인딩된 속성에 대한 접근 범위
2) ServletContext 속성은 애플리케이션 전체에서 접근 가능
3) HttpSession 속성은 사용자만 접근 가능
4) HttpServletRequest 속성은 해당 요청/응답에 대해서만 접근 가능
5) 각 스코프를 이용해서 로그인 상태 유지, 장바구니, MVC의 Model과 View의
데이터 전달 기능을 구현
스코프 종류 해당 서블릿 API 속성의 스코프
---------------------------------------------------------------------------------------------
애플리케이션 스코프 ServletContext 속성은 애플리케이션 전체에 대해 접근할수 있음.
세션 스코프 HttpSession 속성은 브라우저에서만 접근할수 있음.
리퀘스트 스코프 HttpServletRequest 속성은 해당 요청/응답 사이클에서만 접근할수 있음.
3. url-pattern (디렉토리 패턴, 확장자 패턴)
0) 서블릿 매핑 시 사용되는 가상의 이름
클라이언트가 브라우저에서 요청할 때 사용됨.
반드시 /(슬래시)로 시작해야 함.
1) 디렉토리 패턴
- 디렉토리 형태로 서버의 해당 컴포넌트(서블릿,JSP)를 찾아서 실행하는 구조를 말함.
- http://localhost:8080/chap07_Servlet/get
==> /get으로 매핑된 Servlet을 찾아가서 실행됨.
2) 확장자 패턴
- 확장자 형태로 서버의 해당 컴포넌트(서블릿,JSP)을 찾아서 실행하는 구조.
- https://www.weather.go.kr/프로젝트명/*.do
==> .do로 끝나는 요청을 동일한 do서블릿으로 찾아가게 매핑함.
3) 종류(우선순위) URL Pattern 매칭 URL 예
---------------------------------------------------------------------------------------------------
exact mapping /login/hello.do http://localhost:8080/chap07_Servlet/login/hello.do
path mapping /login/* http://localhost:8080/chap07_Servlet/login/
http://localhost:8080/chap07_Servlet/login/hello
http://localhost:8080/chap07_Servlet/login/hello.do
http://localhost:8080/chap07_Servlet/login/test/
extension mapping *.do http://localhost:8080/chap07_Servlet/hi.do
http://localhost:8080/chap07_Servlet/login/hello.do
default mapping / http://localhost:8080/chap07_Servlet/
http://localhost:8080/chap07_Servlet/hello.do
http://localhost:8080/chap07_Servlet/login/
http://localhost:8080/chap07_Servlet/login/hello
http://localhost:8080/chap07_Servlet/login/hello.do
카테고리 없음
JSP(11) - 서블릿 스코프, URL 패턴
728x90
반응형
728x90
반응형
댓글