본문 바로가기
개발자/백엔드 웹 개발자 과정(국비)

[JSP]세션,스코프

by 초응 2023. 1. 13.

jsp 하나는 서블릿 하나를 의미한다.

 

[scope]

공유할 데이터를 각 영역별로 어디에 저장할 것인지 저장하기 위하여 사용한다.

 

scope의 종류

- page(default값) : 현재 페이지만 데이터 유지

- request : 페이지간의 연결시 한번만 데이터 유지( forward시만 가능)

- session : 웹브라우저를 닫을 동안 혹은 세션이 종료될 때까지 유지

(conf\web.xml파일에서 session 항목 수정으로 시간 조정)

- application : 서버가 종료할때까지 데이터 유지

ㄴ서비스를 제공 받고 있는 모든 사용자에게 공유 할 수 있는 공간으로 남발하면 안된다.

ㄴex.네이버 현재 접속자. 


[session]

session의 활용

- 사용자 인증 요구를 필요로 할때(로그인)

- 쇼핑몰에서 장바구니 기능을 구현할 때 (요즘은 디바이스가 다양해져 안하는 추세다)

- 웹페이지 트래킹 기능을 요구할 때

 

session 내장 객체 주요 메서드

ㄴ저장하는 범위만 다를뿐 scope객체라면 모두 같이 가지고 있는 기능이다.

ㄴmap을 기반으로 구현되어있다. (모든 데이터 타입 가능하다)

ㄴ 제네릭 기능 선언 불가, object로 casting(형변환)하여 사용해야한다.

 

-getValueNames() : 세션 이름을  String 배열로 반환해 준다.

-getValue(세션 이름) : 지정된 세션 이름에 해당하는 value값을 Object타입으로 반환해준다.

-invalidate() : 현재 세션을 종료한다. (세션과 관련된 모든 내용이 삭제됨)

-removeAttribute(세션 이름) : 지정된 세션을 삭제.

-getAttribute(세션 이름) : 지정된 세션 이름에 해당하는 value값을 Object 타입으로 반환해준다.

-setAttribute(세션이름, 세션 값) : 지정된 세션이름과 세션값으로 새로운 세션을 저장.

 

 

*autoboxing (오토박싱) : 레퍼런스 자료형을 기본형으로 자동으로 변환해주는것.

*unboxing (언박싱) : 기본형을 레퍼런스 자료형으로 자동으로 변환해 주는 것.

 

 

 

 

'개발자 > 백엔드 웹 개발자 과정(국비)' 카테고리의 다른 글

[jsp]파일 업로드, File  (0) 2023.01.17
[JSP]placeholder  (0) 2023.01.16
[JSP] 쿠키(cookie)  (0) 2023.01.12
[JSP]DBCP 세팅  (0) 2023.01.12
[JSP]회원 가입, 아이디 중복 체크 실습  (0) 2023.01.11