@PostMapping("/login")
public String login(memberVo vo, HttpSession session) {
String id ="aaa", pwd="111";
String msg = "로그인 실패";
if(id.equals(vo.getId()) && pwd.equals(vo.getPwd())) {
session.setAttribute("loginId", id);
msg = "로그인 성공 ";
}
session.setAttribute("msg", msg);
return "member/result";
}
sessionScope을 쓰기 위해 HttpSession session을 파라미터로 컨트롤러에서 받는다. 생성한 session에 session.setAttribute을 이용하여 원하는 값을 넣어 뷰페이지로 이동 하면 위와 같이 사용 가능하다.
하지만 위의 경우는 아직 db연결전이라 임의로 아이디와 비밀번호를 적용해 주었지만 만약에 저장 된 값으로 확인 하고 싶다면 어떻게 해야할지 살펴 보자
@PostMapping("/login")
public String login(MemberVo vo, HttpSession session) {
String msg = "로그인 실패";
MemberVo v = service.getMember(vo.getId());
if(v==null) {
msg ="동일한 아이디가 없습니다";
session.setAttribute("msg", msg);
}
if (v.getId().equals(vo.getId()) && v.getPwd().equals(vo.getPwd())) {
session.setAttribute("loginId", v.getId());
msg = "로그인 성공 ";
}
session.setAttribute("msg", msg);
return "index";
}
(vo.getId()) 를 파라미터로 service에 있는 getMember를 실행시켜 MemberVo v 에 담아 준다. 만약 v 가 null 이라면 동일한 아이디가 없는 것임을 메세지로 알려주고 출력하기 위해 session.setAttribute에 담아 준다.
v 에 있는 Id 값과 로그인 창의 입력한 Id 값이 같은 지를 확인한다.
→ v.getId().equals(vo.getId())
같다면 session.setAttribute 를 이용해 "loginId" 에 MemberVo 에 있는 아이디 값을 담아준다 그리고서는 뷰페이지에 가서 뿌려주면 된다~
'spring 스프링' 카테고리의 다른 글
[MyBatis] 마이바티스 개념 및 정리 (0) | 2023.05.15 |
---|---|
lombok (롬복) 라이브러리 스프링으로 사용 (0) | 2023.05.15 |
[spring] form 파라미터 (0) | 2023.05.09 |
[spring] 스프링 @ annotation 사용 (0) | 2023.05.09 |
[spring] spring mvc (1) | 2023.05.08 |