티스토리 뷰

Backend

[JAVA] 서블릿 스코프 (Servlet Scope)

마로그래머 2021. 8. 12. 18:51
반응형

ServletScope

서블릿에서 변수를 지정하고 객체에 담아 포워드 하려면
객체가 어디까지 유지되는지를 반드시 알아야 마음대로 변수를 가지고 놀 수 있을 것 이다...

서블릿 객체의 각 범위들을 공부해보자!

Servlet Scope

img

서블릿의 스코프는 대략 이런 식으로 되어있다.

JSP에서만 움직이는 Page Scope에서부터 애플리케이션 전체를 아우르는 Application Scope까지 하나씩 알아보자.


Page Scope

img

JSP 내에서 <% %>로 선언되는 것은 해당 JSP 안에서만 사용 할 수 있는데 이런 개념이 Page Scope이다.
그래서 JSP의 지역변수처럼 활용이 가능하다.

img

클라이언트(브라우저)의 요청이 있을경우

PageContext내장객체의 변수는 JSP 안에서만 머물게 된다.

그러므로 포워드 될 경우 변수는 사라지게된다.

Request Scope

img

서블릿 컨테이너에서 만들어지는 HttpServletRequest 객체와 HttpServletResponse객체에 담기는 변수는

하나의 요청과 응답이 끝날 때 까지 머물게 되는데 이것을
Request Scope라고 한다.

img

하나의 요청과 응답에 머무르기때문에 컨테이너 내에서 포워딩되어도 변수는 그대로 유지된다.

Session Scope

img

하나의 브라우저 내에서 공유되는 Scope이다.

브라우저의 TAB에서 정보가 유지되는 것은 바로 이 객체의 변수가 유지되기 때문!

img

쇼핑몰의 장바구니를 생각하면 이해가 빨랐다.

Application Scope

img

하나의 애플리케이션 내에서 공유되는 Scope이다.

하나의 애플리케이션 내의 변수를 여러 클라이언트와 공유 할 수 있다.

img

잘 변하지 않고 모든 이들이 공통적으로 공유해야하는 것들은 이 Application Scope를 이용해야 한다.



참고 사이트:

부스트코스:SCOPE란?

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함