* Scope
: JSP 페이지에서 사용되는 객체들은 모두 정해진 영역 안에서만 사용가능
1. Page scope
: 실제 선언된 JSP 페이지 내에서만 사용 가능
- pageContext 내장객체로 사용 가능
: pageContext.setAttribute(네임값(String), 실제값(Object)) : 데이터 저장
: pageContext.getAttribute(네임값(String)) : 데이터 가져오기
- 저장된 값은 저장한 페이지 내에서 지역변수로 사용
- 주 사용 용도
1) pageScope에 값을 저장한 후 EL 표기법 사용 : ${pageScope.네임값} or ${네임값}
2) 해당 JSP나 Servlet이 실행되는 동안에만 정보 유지하고자 할 때 사용
2. Request scope
: 클라이언트로부터 요청을 받고 응답할 때까지 사용가능
- HttpServletRequest 객체로 사용가능
: request.setAttribute(네임값(String), 실제값(Object))
: request.getAttribute(네임값(String))
- service() 메소드가 끝날 때 객체가 없어짐
- 주 사용 용도
1) 클라이언트의 요청을 다룰 때 사용
2) forward로 데이터 넘겨서 유지하고자 할 때 사용
3. Session scope
: 세션이 유지되는 동안 사용가능
- HttpSession 객체로 사용가능
: session.setAttribute(네임값(String), 실제값(Object))
: session.getAttribute(네임값(String))
- 웹 브라우저 별(Chrome, Safari 등) 변수 관리하는 영역
- 주 사용 용도
1) 주로 로그인 시 사용자 정보를 저장하고 싶을 때 사용
4. Application scope
: 웹 어플리케이션이 시작되고 종료될 때까지 사용가능
- ServletContext 객체로 사용가능
: application.setAttribute(네임값(String), 실제값(Object))
: application.getAttribute(네임값(String))
- 웹 어플리케이션 당 한 개의 객체 사용
- 주 사용 용도
1) 모든 클라이언트들이 공통적으로 사용하는 값 저장
'JSP&Servlet > 기초정리' 카테고리의 다른 글
Maven 방식 사용하기 (0) | 2023.02.13 |
---|---|
JSP&Servlet 기초 - MVC Model1 방식 (0) | 2023.02.09 |
JS&Servlet 기초 - 로그인 실습(세션 추가) (0) | 2023.02.07 |
JSP 기초 - 쿠키와 세션 (1) | 2023.02.03 |
JSP 기초 - 랜덤 실습 (0) | 2023.02.02 |