-
[부스트코스] scope - BE부스트코스 코딩일지/DB 연결 웹 앱 2020. 3. 13. 14:01
Scope란?
변수를 사용할 때 변수가 유효한 범위를 알아두어야 합니다.
이것을 scope로 정리해 놓았는데요.
범위에 따른 scope에 대해 알아봅시다.
출처 http://inheritingjava.blogspot.kr/2011/04/chapter-42-scope-of-javabeans-in-jsp.html [출처: https://www.edwith.org/boostcourse-web/lecture/16708/]
Page scope
가장 작은 범위인 page scope입니다.
PageContext 추상 클래스를 사용하여
pageContext.getAttribute()
pageContext.setAttribute(,)
와 같이 사용하면 됩니다.
[출처: https://www.edwith.org/boostcourse-web/lecture/16709/]
Request scope
http 요청을 WAS가 받아서 웹 브라우저에게 응답할 때까지 변수값을 유지하고 싶을 때 사용합니다.
서블릿에서는 HttpServletRequest 객체를 사용하고 JSP에서는 request 내장 변수를 사용합니다.
forward 할 때 많이 사용하는 scope입니다.
[출처: https://www.edwith.org/boostcourse-web/lecture/16710/]
Session scope
웹 브라우저 별로 변수를 관리하고자 할 때 사용합니다.
웹 브라우저 안에 탭의 개념이 있습니다. 각각의 탭에서는 같은 세션정보를 사용할 수 있습니다.
혹은 사용자별 즉 클라이언트 별로 정보가 유지되어야 할 때 사용합니다.
사용 방법은 모두 같은 getAttribute()와 setAttribute()입니다.
서블릿에서는 HttpSession 인터페이스를 구현한 객체를 사용하고, JSP에서는 session 내장 변수를 사용합니다.
[출처: https://www.edwith.org/boostcourse-web/lecture/16711/]
Application scope
웹 애플리케이션이 시작되고 종료될 때까지 변수를 사용할 수 있습니다.
서블릿에서는 ServletContext 인터페이스를 구현한 객체를 사용합니다.
getServletContext() 메서드를 이용하여 application 객체를 이용하면 됩니다.
JSㅔdptjsms application 내장 객체를 이용하여 사용할 수 있습니다.
모든 클라이언트가 공통으로 사용해야 할 값들이 있을 때 사용합니다.
[출처: https://www.edwith.org/boostcourse-web/lecture/16712/]
'부스트코스 코딩일지 > DB 연결 웹 앱' 카테고리의 다른 글
[부스트코스] EL - BE (0) 2020.03.13 [부스트코스] redirect & forward - BE (0) 2020.03.13 [부스트코스] JSP -BE (0) 2020.03.12 [부스트코스] WEB UI 개발 -FE (1) 2020.02.24 [부스트코스] JavaScript -FE(4) (0) 2020.02.22