PDF문서인터넷프로그래밍 (13주차 1차시-2차시).pdf

닫기

background image

목원대학교 융합컴퓨터미디어학부 교수

박 기 홍


background image

학습 목표

2

2020-1학기

• 세션의 개념을 이해합니다.

 세션을 생성하는 방법을 익힙니다.

 세션 정보를 가져오는 방법을 익힙니다.

 세션을 삭제하는 방법을 익힙니다.

 세션 유효 시간을 설정하는 방법을 익힙니다.

• 웹 쇼핑몰의 장바구니 페이지를 만듭니다.

본 온라인 강의 교안 작성 시

한빛아카데미에서 제공하는 강의 교안을 참고 하였습니다.

인터넷프로그래밍


background image

세션의 개요 (1/3)

3

2020-1학기

인터넷프로그래밍

세션(session)

• 클라이언트와 웹 서버 간의 상태를 지속적으로 유지하는 방법

 예를 들면, 웹 쇼핑몰에서 장바구니나 주문 처리와 같은 회원 전용 페이지의 경우

로그인 인증을 통해 사용 권한을 부여. 

 그래서 다른 웹 페이지에 갔다가 되돌아와도 로그인 상태가 유지되므로 회원 전용 페이지를

계속 사용할 수 있음. 

 이렇게 사용자 인증을 통해 특정 페이지를 사용할 수 있도록 권한 상태를 유지하는 것.

• 웹 서버에서만 접근이 가능하므로 보안 유지에 유리하며 데이터를 저장하는 데

한계가 없음


background image

세션의 개요 (2/3)

4

2020-1학기

인터넷프로그래밍

세션(session)

• 오직 웹 서버에 존재하는 객체로 웹 브라우저마다 하나씩 존재하므로 웹 서버의

서비스를 제공받는 사용자를 구분하는 단위가 됨.

• 웹 브라우저를 닫기 전까지 웹 페이지를 이동하더라도 사용자의 정보가 웹 서버에

보관되어 있어 사용자 정보를 잃지 않음.


background image

세션의 개요 (3/3) – session 내장객체 메소드

5

2020-1학기

인터넷프로그래밍


background image

세션 생성 (1/2)

6

2020-1학기

인터넷프로그래밍

세션 생성

• session 내장 객체의 setAttribute( ) 메소드를 사용

• setAttribute( ) 메소드를 이용하여 세션의 속성을 설정하면 계속 세션 상태를

유지할 수 있음. 만약 동일한 세션의 속성 이름으로 세션을 생성하면 마지막에
설정한 것이 세션 속성 값이 됨.

• 첫 번째 매개변수 name은 세션으로 사용할 세션 속성 이름을 나타내며, 

세션에 저장된 특정 값을 찾아오기 위한 키로 사용. 

• 두 번째 매개변수 value는 세션의 속성 값

• 세션 속성 값은 Object 객체 타입만 가능하기 때문에 int, double, char 등의 기본

타입은 사용할 수 없음


background image

세션 생성 (2/2)

7

2020-1학기

인터넷프로그래밍


background image

세션 정보 (1/4)

8

2020-1학기

인터넷프로그래밍

단일 세션 정보 얻기

• 세션에 저장된 하나의 세션 속성 이름에 대한 속성 값을 얻어오려면

getAttribute( ) 메소드를 사용

• getAttribute( ) 메소드는 반환 유형이 Object 형이므로 반드시 형 변환을 하여

사용해야 함

• 첫 번째 매개변수 name은 세션에 저장된 세션 속성 이름

 해당 속성 이름이 없는 경우 nul 을 반환


background image

세션 정보 (2/4)

9

2020-1학기

인터넷프로그래밍


background image

세션 정보 (3/4)

10

2020-1학기

인터넷프로그래밍

다중 세션 정보 얻기

• session 속성 이름을 Eunumeration 객체 타입으로 반환하여 세션 정보를 얻음.

• session 내장 객체의 getAttributeNames( ) 메소드를 사용


background image

세션 정보 (4/4)

11

2020-1학기

인터넷프로그래밍


background image

세션 삭제 (1/5)

12

2020-1학기

인터넷프로그래밍

단일 세션 삭제하기

• session 에 저장된 하나의 세션 속성 이름을 삭제하려면

removeAttribute( ) 메소드를 사용


background image

세션 삭제 (2/5)

13

2020-1학기

인터넷프로그래밍


background image

세션 삭제 (3/5)

14

2020-1학기

인터넷프로그래밍


background image

세션 삭제 (4/5)

15

2020-1학기

인터넷프로그래밍

다중 세션 삭제하기

• session에 저장된 모든 세션 속성 이름을 삭제하려면 invalidate( ) 메소드를 사용


background image

세션 삭제 (5/5)

16

2020-1학기

인터넷프로그래밍


background image

세션 유효 시간 설정 (1/3)

17

2020-1학기

인터넷프로그래밍

세션 유효 시간

• 세션을 유지하기 위한 세션의 일정 시간

• 웹 브라우저에 마지막 접근한 시간부터 일정 시간 이내에 다시 웹 브라우저에

접근하지 않으면 자동으로 세션이 종료

• 세션 유효 시간을 설정하기 위해 session 내장 객체의

setMaxInactiveInterval( ) 메소드를 사용


background image

세션 유효 시간 설정 (2/3)

18

2020-1학기

인터넷프로그래밍


background image

세션 유효 시간 설정 (3/3)

19

2020-1학기

인터넷프로그래밍