2023. 2. 24. 21:03ㆍ개발/JSP게시판
세션은 현재 접속한 한 명의 회원에게 할당되는 고유한 ID다. 웹 서버는 한 명의 회원을 세션 ID로 구분할 수 있고, 로그인을 하면 세션이 부여되어서 로그인을 하지 않은 경우와는 다른 화면을 제공할 수 있다. 이번 포스팅에서는 로그인 했을 때와 회원가입 했을 때 세션을 부여하여 각각 보여지는 화면이 다르게 보이게 해보자.
loginAction.jsp에 로그인 성공했을 때 세션을 부여하는 코드 추가.
이걸 그대로 복사해서 joinAction에도 로그인이 성공했을 때의 부분에도 넣어주자
이제 세션을 해지해주는 로그아웃 페이지를 만들어주자. logoutAction.jsp에 joinAction페이지 내용을 모두 복사하여 붙여 넣어주자
원래 있던 내용을 싹 지워주고, 이 페이지를 접속한 회원에 세션을 빼앗기도록 invalidate 해서 로그아웃 시켜주자.
로그아웃되면 메인 페이지로 돌아가도록 설정
이제 로그인을 한 회원들은 세션아이디를 부여받기 때문에 로그인 여부를 확인할 수 있다. 그럼 이제 로그인이 된 유저는 로그인과 회원가입 페이지에 들어갈 수 없도록 설정하자.
userID라는 변수가 자신에게 할당된 세션 아이디를 담을 수 있도록 만들어 주는 것이다.
이미 로그인한 사람은 또다시 로그인 할 수 없도록 막아주는 것. 이걸 그대로 복사해서 회원가입처리 페이지에도 넣어주자.
이제 로그인이 된 사람은 회원가입 페이지에 들어가지 못하게 됐다. 이제 index 페이지를 바꿔주자
login을 메인으로 바꿔주면 처음 접속하는 사람들은 index 페이지가 아니라 메인 페이지로 이동하게 된다.
그럼 이제 가장 중요하다고 할 수 있는 main 페이지를 만들어보자. login.jsp 파일을 그대로 복사해서 메인에 넣어주자.
그리고 윗쪽에 스크립트 문장을 쓸 수 있도록 라이브러리 추가해주자.
이제 로그인이 된 사람들은 그 로그인 정보를 담을 수 있도록 만들어주자.
로그인을 한 사람이라면 userID라는 변수에 해당 아이디가 담기게 될거고 그렇지 않은 사람들은 null값이 담기게 될 것이다.
메인 페이지이기 때문에 액티브 달아줌. 현재 접속한 페이지가 메인 페이지라는 걸 알려주면 된다.
로그인이 되어있지 않은 경우를 추가
로그인이 됐을 경우 추가
이제 구현이 잘 되었는지 테스트를 해보자
메인 페이지에서 메인 부분이 액티브 되어있고 아직 로그인을 하지 않았기 때문에 로그인 회원가입 부분이 뜬다.
그럼 회원가입을 해보자.
회원가입을 하면 바로 메인페이지로 들어가고 우측에 회원관리와 로그아웃이 뜨는 걸 볼 수 있다.
로그인을 했을 때도 동일하게 뜬다. 성공!
'개발 > JSP게시판' 카테고리의 다른 글
9강(게시판 데이터베이스 구축하기) (0) | 2023.02.26 |
---|---|
8강(게시판 메인 페이지 디자인) (0) | 2023.02.25 |
6강(회원가입 기능 구현하기) (0) | 2023.02.21 |
5강(회원가입 페이지 디자인) (0) | 2023.02.21 |
4강(로그인 기능 구현하기) (0) | 2023.02.19 |