728x90
ApplicationScope (또는 ContextScope)
- javax.servlet.ServletContext 인터페이스
- 웹 어플리케이션이 시작할 때부터 끝날때(종료, 변경)까지 한 개의 객체로 유지된다.
- 모든 서블릿과 jsp에서 사용가능하다.
- jsp : application 객체로 사용 가능
- servlet : getServletContext() 또는 getServletConfig().getServletContext()
SessionScope
- javax.servlet.http.HttpSession 인터페이스
- client(e.g. 브라우저 윈도우)가 웹 어플리케이션과 연결을 시작할 때부터 브라우저가 닫힐때까지 유지된다. 타임아웃 시간이 설정되면 닫히지 않아도 시간이 지나면 자동으로 삭제된다.
- 한 웹사이트에 로그인 한 뒤 새로운 탭으로 동일 사이트에 들어가면 다시 로그인을 하지 않아도 되는 것은 session scope이 유지되고 있기 때문이다.
- 세션이 유지되는 중이라면 여러 요청에서 사용가능하다.
- jsp : session 객체로 사용 가능
- servlet : request.getSession()으로 사용 가능. (인자값 true : 없으면 새 세션 생성, false : 없으면 null 반환)
RequestScope
- javax.servlet.http.HttpServletRequest 인터페이스
- 요청이 서블릿에 도달했을 때부터 서블릿이 끝나고 응답할 때까지 유지된다.
- 서블릿의 service() 메소드에 들어갈 때부터 그 메소드에서 나갈때까지라고 생각하면 된다.
- 하나의 요청을 처리하는 모든 서블릿/jsp에서 사용할 수 있다.
- jsp : request 객체로 사용 가능
- servlet : request 객체에 attribute를 set, get할 수 있음
PageScope (JSP Page Scope)
- javax.servlet.jsp 추상클래스
- 현재 페이지 내에서만 사용 가능하다.
- jsp : pageScope 객체로 사용 가능
참고 사이트 : https://www.javajee.com/application-request-session-and-page-scopes-in-servlets-and-jsps
'기록 > BACKEND' 카테고리의 다른 글
[Spring] DI 주입하기 - xml (0) | 2022.04.15 |
---|---|
[WEB] 파라미터와 어트리뷰트 (0) | 2022.04.04 |
[WEB] Java에서 DB연결하기 (0) | 2022.04.02 |
[WEB] Servlet (0) | 2022.03.29 |
[WEB] MVC Pattern (0) | 2022.03.29 |
댓글