'세션'에 해당되는 글 2건

반응형

login3.html

로그인 창의 요청을 처리하는 LoginServlet입니다.

로그인 창에서 전송된 id와 비밀번호를 가져와 MemberVO객체를 생성한 후 속성에 ID와 비밀번호를 설정합ㄴ디ㅏ. 그런 다음 MemberVO객체를 생성한 후 속성에 ID와 비밀번호를 설정합니다. 그런 다음 MemberDAO의 isExisted() 메서드를 호출하면서 memberVO를 인자로 전달합니다. 조회된 결과가 true이면 isLogOn 속성을 true로 세션에 설정하고, ID와 비밀번호도 세션에 저장합니다.

MemberDao 클래스를 다음과 같이 작성합니다. 오라클에서 제공하는 decode() 함수를 이용해 SQL문으로 회원 정보를 조회합니다. 정보가 존재하면 true를, 존재하지 않으면 false를 반환합니다.

ShowMember 클래스를 작성하겠습니다.

두번째 서블릿은 사용자가 로그인할때 회원 정보를 표시해 줍니다. 먼저 로그인 상태를 확인하기 위해 getSession(false)메서드를 호출하여 세션을 얻은 다음 getAttribute() 메서드에 isLogOn을 인자로 전달해 로그인 상태를 가져옵니다. isLogOn의 값이 true이면 회원 정보를 세션에서 가져와 출력합니다. 만약 세션이 존재하지 않거나 isLogOn이 false면 다시 고그인 창으로 이동합니다.

memberVO화면입니다.

반응형
블로그 이미지

꽃꽂이하는개발자

,

세션이란?

2020/JSP SERVLET 2019. 12. 5. 20:36
반응형

세션?  

  쿠키는 사용시 웹페이지들의 정보가 클라이언트 PC에 저장되므로 정보가 쉽게 노출될 수 있다는 단점이 있는 반면, 세션은 서버의 메모리에 생성되어 정보를 저장합니다. 따라서 웹페이지에서 사용되는 정보 중에 로그인 정보처럼 보안이 요구되는 정보는 대부분 세션을 이용합니다.

  세션은 각 브라우저당 1개, 즉 사용자당 한개가 생성되며, 사용자의 로그인 상태나 쇼핑몰의 장바구니 담기 기능 같은 정보를 해당 브라우저에 저장해 두고 사용하면 편리합니다.

  •  세션의 특징은 정보가 서버의 메모리에 저장됩니다.
  •  브라우저의 세션 연동은 세션 쿠키를 이용합니다.
  • 쿠키보다 보안에 유리합니다.
  • 서버에 부하를 줄 수 있습니다.
  • 브라우저(사용자)당 한 개의 세션(세션ID)가 생성됩니다.
  • 세션은 유효 시간을 가집니다( 기본 30분)
  • 로그인 상태 유지 기능이나 쇼핑몰의 장바구니 담기 기능 등에 주로 사용됩니다.

세션의 기능 실행 과정

  1. 브라우저로 사이트에 접속
  2. 서버는 접속한 브랑루저에 대한 세션 객체를 생성
  3. 서버는 생성된 세션ID를 클라이언트 브라우저에 응답
  4. 브라우저는 서버로부터 받은 세션ID를 브라우저가 사용하는 메모리의 세션 쿠키에 저장
  5. 브라우저가 재접속하면 브라우저는 Session 쿠키에 저장된 세션 id를 서버에 전달
  6. 서버는 전송된 세션 id를 이용해 해당 세션에 접근하여 작업을 수행

세션 API의 특징과 기능

  서블릿에서 세션을 이용하려면 HttpSession 클래스 객체를 생성해서 사용해야 합니다. HttpSession객체는 HttpServletRequest의 getSession() 메서드를 호출해서 생성합니다.

  세션을 얻은 getSession() 메서드는

  • getSession(): 기존의 세션 객체가 존재하면 반환하고, 없으면 새로 생성합니다.
  • getSession(true): 기존의 세션 객체가 존재하면 반환하고, 없으면 새로 생성합니다.
  • getSession(false): 기존의 세션 객체가 존재하면 반환하고, 없으면 null을 반환합니다.

 

 

반응형
블로그 이미지

꽃꽂이하는개발자

,