푸린세스

<%@ page session="false" %> 남발 하면 안된다. 본문

카테고리 없음

<%@ page session="false" %> 남발 하면 안된다.

푸곰주 2022. 11. 7. 18:21

에러 있는 부분을 지우고 실행하여 로그인을 시도해봤는데 내용이 바뀌지 않았다는건, 말그대로 로그인이 되지 않았을 확률이 높은것 같습니다. 이것도 위처럼 매개변수 중 null이 있기 때문인것 같습니다.

만약 jsp파일의 최상단에 <%@ page session="false" %>가 있다면 지워주세요.

 

 

 

//로그인 post
@RequestMapping(value = "/signin", method = RequestMethod.POST)
public String postSignin(MemberVO vo, HttpServletRequest req, RedirectAttributes rttr) throws Exception {
   logger.info("post signin");

   MemberVO login = service.signin(vo);
   HttpSession session = req.getSession();


   boolean passMatch = passEncoder.matches(vo.getUserPass(), login.getUserPass());

   if (login != null && passMatch) {
      session.setAttribute("member", login);
   } else {
      session.setAttribute("member", null);
      rttr.addFlashAttribute("msg", false);
      return "redirect:/member/signin";
   }
   return "redirect:/";

}

 

 

 

로그인 성공했을때 session객체에 member 을 key로 해서 view에다가 값을 넘겨주는데

 

<c:if test="${member == null}">
    <li> <a href="/member/signin">로그인</a></li>

    <li><a href="/member/signup">회원가입</a></li>


</c:if>

<c:if test="${member != null}">
    <li>
        ${member.userName} 님 환영합니다.
    </li>
    <li>

        <a href="/member/signout">로그아웃</a>
    </li>

</c:if>

 

 

<%@ page session="false" %>

 

가 되어있으면 null이 되어버림

로그인효과가없어짐

 

정확히 어느때에 쓸지 알아둘것.