*프로젝트 만들면서 몰랐던거 복습.
HttpSession은 간단하게 말해서 입력한 정보들(로그인 사용자 정보)을 서버에 저장하는 기술이다.
Session값 저장은 이런 식으로 했다.
User DTO
public class User {
private String id;
private String pw;
private String name;
private String nickname;
private Date birth;
private String email;
//getter,setter,toString 생략
}
Controller
@PostMapping("/login")
public ModelAndView login(HttpSession session, User user){
//로그인 과정 생략
......
session.setAttribute("login", user);
......
//생략
}
View단에서 입력받은 정보들을 User 객체에 저장하고 Attribute의 이름을 "login"으로 지정하고 session에 저장했다.
저장한 session을 출력해보면 저장이 잘 된 것을 알 수 있다.
출력 코드는 getAttribute("속성명");
여기서 "login" 속성에 User객체로 저장되어 있는 요소들 중 nickname을 가져와보자.
User user = (User)session.getAttribute("login");
Session 이름이 "login"인 속성을 (User)로 형변환 한 후 User 객체에 다시 집어넣어줬다.
그 후 User에 저장된 nickname을 리턴하면 된다.
System.out.println(user.getNickname());
잘 불러와진다.
끝~
'Spring 개발..' 카테고리의 다른 글
Spring DI(Dependency Injection)에 대해 알아보자. (0) | 2022.03.31 |
---|