민스씨의 일취일장

LogT | Java Spring의 Application내의 데이터 저장소인 내장객체의 유효범위와 속성에 대해 알게된 모든 내용과 고민들 본문

Programming Language & Framework/JAVA & Spring

LogT | Java Spring의 Application내의 데이터 저장소인 내장객체의 유효범위와 속성에 대해 알게된 모든 내용과 고민들

읻민스 2023. 1. 10. 23:10
반응형

Java Spring의 Application 내의 데이터 저장소에 대해 알게된 것들을 시간순으로 기록한 글이다.


2023년 1월 10일

Application의 저장소 :  내장객체 (Implicit Objects)

HTTP의 특징 중 하나는 상태정보를 저장하지 않는 것이다. 하지만 특정 정보들은 웹 애플리케이션을 이용하는 동안 지속적으로 또는 특정시간동안 필요해서 저장해 둬야할 필요가 있다. 이 때 사용할 수 있는 저장소들이 있다. 이들은 접근범위와 생존기간(Scope)에 따라서 4가지로 분류할 수 있다.

저장소 접근범위 특징
PageContext JSP페이지 내부에서만 접근 가능하다. 요청할 때 마다 초기화된다.
lv로 저장해 놓은 데이터는 EL( ${} )을 이용해 사용할 수 있다.
Application WebApp(ServletContext) 전체에서 접근 가능하다. 전체 Application에 하나만 존재한다.
여러 이용자가 함께 사용한다.
session 접속한 Client가 접속한 모든 페이지에서 접근가능하다. Client 수만큼 존재하기 때문에 리소스 소모가 크다.
request 요청이 도달하는데 접속한 페이지에서 모두 접근 가능하다.  요청할때마다 생성된다.

* 접근 가능하다는 것은 데이터를 읽고 쓸 수 있다는 것을 의미한다.

속성 Attribute

  • 각각의 저장소에 저장된 데이터는 속성(Attribute)라고 부른다.
  • 데이터를 읽고 쓸 때는 getAttribute(String name)와 setAttribute(String name)를 사용한다.
  • 삭제할 때는 removeAttribute(String name)을 사용한다.
728x90
반응형