반응형
[JSP] 영역(scope)과 속성(attribute)
- 영역과 속성
- 영역(scope) : 속성을 공유할 수 있는 유효범위
- 속성(attribute) : 공유되는 데이터
- JSP에서 제공하는 내장객체
- request객체
- session객체
- application객체
이들은 각각의 영역(Scope)과 관련된 속성(Attribute)를 가질 수 있다.
[출처] http://sensibilityit.tistory.com/45
- Request scope
- request 내장객체는 클라이언트(=사용자)의 요청이 처리되는 동안 속성을 사용할 수 있다.
* showDataServlet.java
- Session scope
- Session 내장객체는 세션이 유지되고 있는 Session Scope 안에서 서로 다른 페이지라고 해도 데이터를 공유할 수 있다.
- 이 속성에 내장된 데이터는 세션(브라우저)이 종료되는 순간 반환한다.
- 한 브라우저 내에 1개의 session만 생성
* loginform.jsp (로그인폼)
- form action="login.jsp" 로 설정한다
* login.jsp
- 입력받은 값이 조건에 맞을 시 session 영역에 setAttribute 메소드로 넣는다.
- location.href를 이용해 login_result.jsp로 이동한다.
* login_result.jsp
- session영역에 담긴 내용을 getAttribute를 이용해 가져온다.
* logout.jsp
- session영역을 초기화 하려면 session.invalidate() 혹은 removeAttribute()를 이용한다.
- Application scope
- 웹 어플리케이션이 실행되고 있는 동안 속성을 사용할 수 있다.
- 서버를 종료하기 전까지는 데이터가 유지된다.
- 모든이가 공유할 수 있는 데이터이다.
*count.jsp
- application.setAttribute 를 이용하여 myName에 '김구라'를 넣는다.
- count 키값이 null이면 1로 지정, 존재하면 카운트를 증가시킨다.
- 해당 페이지를 새로고침할 경우 count가 application영역에 누적된다.
*other_page.jsp
- application영역에 저장된 문자열을 읽어오기 위해서는 application.getAttribute를 이용한다.
반응형
'Language > JSP' 카테고리의 다른 글
[JSP] File Upload/Download (0) | 2017.07.10 |
---|---|
[Eclipse] Templete 등록하기 (0) | 2017.06.28 |
[JSP] Filter (0) | 2017.06.28 |
[JSP] ConnectionPool (0) | 2017.06.27 |
[오류]The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path (0) | 2017.06.24 |
댓글