sm 기술 블로그

[스프링부트] HttpSession 본문

스프링부트

[스프링부트] HttpSession

sm_hope 2022. 7. 2. 22:54

HttpSession

로그인을 구현하기 위해 사용하는 메서드(로그인을 유지하기 위한 메서드)

공식 문서를 보면
Provides a way to identify a user across more than one page request or visit to a Web site and to store information about that user

  • 둘 이상의 페이지 요청에서 사용자를 식별하거나, 웹 사이트를 방문하고 해당 사용자에 대한 정보를 저장하는 방법을 제공한다.
    The servlet container uses this interface to create a session between an HTTP client and an HTTP server. The session persists for a specified time period, across more than one connection or page request from the user. A session usually corresponds to one user, who may visit a site many times. The server can maintain a session in many ways such as using cookies or rewriting URLs.
  • 서블릿 컨테이너는 HttpSession 인터페이스를 사용하여 HTTP 클라이언트와 HTTP 서버 간의 세션을 작성합니다. 세션은 지정된 시간 동안 사용자의 둘 이상의 연결 또는 페이지 요청에 걸쳐 지속됩니다. 세션은 일반적으로 사이트를 여러 번 방문할 수 있는 한 사용자에 해당합니다. 서버는 쿠키를 사용하거나 URL을 다시 작성하는 등의 다양한 방법으로 세션을 유지관리할 수 있습니다.
    Session information is scoped only to the current web application ( ServletContext), so information stored in one context will not be directly visible in another.
  • 세션 정보는 현재 웹 응용프로그램(ServletContext)으로만 범위가 지정되므로, 한 컨텍스트에 저장된 정보는 다른 컨텍스트에서 직접 볼 수 없습니다.

정리하면 이렇다.
HttpSession은 둘 이상의 페이지의 요청 또는 웹사이트를 방문한 사용자를 식별하고 해당 사용자에 대한 정보를 저장하는 방법을 제공한다.

  • 서블릿 컨테이너는 Http 클라이언트와 Http 서버 사이의 세션을 만드는데 사용한다.
  • Session은 사용자의 둘 이상의 연결 또는 페이지 요청을 통해 지정된 기간 동안 유지된다.
  • Session은 보통 웹사이트를 여러번 방문하는 하나의 사용자에 해당한다.
  • 서버는 쿠키를 사용하거나 URL 다시쓰기 등과 같은 여러가지 방법으로 session을 유지할 수 있다.

그냥 로그인을 유지하는데 사용된다 라고 인식 하면 된다.

적용

import javax.servlet.http.HttpSession;
public ResultData doLogin(HttpSession httpSession,String loginId, String loginPw){}

다음과 같이 import를 해주고, 매개변수 자리에 선언을 해주면 사용이 가능하다.

명령어 (name은 key로 생각하자.)

  • getAttribute
 public Object getAttribute(String name);

이름(usr)을 가져온다.

  • setArrtribute
public void setAttribute(String name, Object value);

이름(usr)과 값(value)를 설정한다.

  • removeAttribute
public void removeAttribute(String name);

이름(usr)를 삭제한다.

'스프링부트' 카테고리의 다른 글

[스프링부트] CRUD  (0) 2022.07.09
[스프링부트] JPA 메소드 모음  (0) 2022.07.06
[스프링부트] 로그인 여부 확인 | 권한 확인  (0) 2022.07.02
[스프링부트] 로그인 | 로그아웃 구현  (0) 2022.07.02
Utillity  (0) 2022.06.30
Comments