본문 바로가기
SpringBoot

[SpringBoot] Httpsession

by Yeoseungwon 2023. 7. 6.
728x90

HttpSession 객체를 사용하여 "user"라는 이름으로 유저 정보를 세션에 저장하는 예시

@Controller
public class MyController {

    @RequestMapping(value = "login", method = RequestMethod.POST)
    public String login(HttpSession session, UserEntity user) {
        // 로그인 로직 수행
        // ...

        // 로그인이 성공한 경우 세션에 "user" 속성으로 유저 정보 저장
        session.setAttribute("user", user);

        return "redirect:/home";
    }
}

위의 예시에서 /login 경로로 POST 요청이 들어오면 로그인 로직을 수행하고, 로그인이 성공한 경우 HttpSession 객체의 setAttribute() 메서드를 사용하여 "user" 속성으로 유저 정보를 세션에 저장합니다.

 

@Controller
public class MyController {

    @RequestMapping(value = "login", method = RequestMethod.POST)
    public String login(HttpSession session, UserEntity user) {
        // 로그인 로직 수행
        // ...

        // 로그인이 성공한 경우 세션에 "user" 속성으로 유저 정보 저장
        session.setAttribute("user", user);

        return "redirect:/home";
    }

    @RequestMapping("/home")
    public String home(HttpSession session) {
        // 세션에서 "user" 속성 가져오기
        UserEntity user = (UserEntity) session.getAttribute("user");

        // 세션에 "user" 속성이 존재하는지 확인
        if (user != null) {
            // 로그인한 사용자의 정보 활용
            // ...
        } else {
            // 로그인되지 않은 상태 처리
            // ...
        }

        return "home";
    }

}

 

그리고 /home 경로로 요청이 들어오면 HttpSession 객체의 getAttribute() 메서드를 사용하여 "user" 속성을 가져옵니다. 이를 통해 세션에 "user" 속성이 존재하는지 확인하고, 로그인한 사용자의 정보를 활용하거나 로그인되지 않은 상태를 처리할 수 있습니다.

위의 코드는 Spring MVC 프레임워크를 기반으로 작성되었으며, /login과 /home은 예시일 뿐이므로 프로젝트의 구조나 요구사항에 따라 알맞게 수정해야 합니다.

 

 

 

 

728x90

'SpringBoot' 카테고리의 다른 글

주소확인  (0) 2023.09.22
프로젝트 생성  (0) 2023.09.22
배포  (0) 2023.08.22
[SpringBoot] Html 자체 폼 전달 -> Controller / 검색기능구현  (0) 2023.06.28
[SpringBoot] 회원가입 insert  (0) 2023.06.20