YJ의 새벽
Spring 5 ( 로그인 , 로그아웃 , 쿠키 ) 본문
--- MyBatis 설정 끝냈으니 .
--- 기존 MEMBER 테이블의 컬럼들만 ,
새로운 MEMBER_S 테이블로 복제 . ( NOT NULL 제약조건만 복제 )
--- 기존 ENROLL_DT 컬럼에 기본값 지정.
--- 기존 SECESSION_FL 컬럼에 기본값 지정.
--- 기존 MEMBER_NO 에 기본키 지정.
--- 기존 SECESSION_FL 에 CHECK 제약조건 추가 .
--- 시퀀스 생성
-- 테스트용 데이터 추가 .
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--- 이메일 , 비밀번호 치고 로그인했을때, 그사람의 전화번호 받아와보자.
--- 파라미터가 VO로 전달된 경우. 패키지+ 클래스명 모두 작성해야한다 .
--- mybatis-config.xml 파일에서, 별칭을 따로 작성해주자
--- member-mapper.xml 에 가서 파라미터 타입으로, 별칭 작성 .
--- 콘솔창 전화번호 확인.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
이제 로그인을 해보자 .
-- resultType 에 VO 를 작성하는경우 .
-VO의 필드명과 조회되는 컬럼명이 일치하면 자동으로 VO 객체에 값이 세팅된다.
- java 와 DB 표기법 차이로 적용되기 쉽지않다.
-- resultMap 사용 !!
--SELECT 조회 결과(ResultSet)의 컬럼과 조회 결과를 옮겨담을 VO 의 필드명이 일치하지 않을때
이를 맵핑시켜 조회결과가 필드에 세팅되게 하는 역할.
-- type : 조회 결과를 담을 VO의 타입 또는 별칭
id : 만들어진 resultMap 태그를 지칭할 이름 ( 식별명 )
-- 내부 작성된 < id > : PK 역할의 컬럼 - 필드 연결
< result > : PK 제외한 나머지 컬럼 - 필드 연결
-- resultMap 을 세팅해준다 . ( 컬럼명 = 필드명 )
id = member_rm
-- resultMap = "member_rm" 세팅해놓은 resultMap 사용
-- 디버그로 들어온값 확인하고 .
-- return 받은 loginMember 가지고, MemberServiceImpl.class 로 가자.
-- return 받은 loginMember 가지고 Controller 로 가자 .
-- Model : 데이터를 맥 형식 ( K : V ) 형태로 담아 전달하는 용도의 객체
--> request , session 을 대체하는 객체
-기본 scope : request
-session scope 로 변환하고 싶은경우
클래스 레벨로 @SessionAttributes 를 작성.
-- 로그인누르면
-- 창이바뀐다.
--- login 성공시 ? 실패시 ? 메시지 추가하자 .
-- addFlashAttribute 는 서블릿을 한번이라도 거쳐야 실행이 된다 .
-index.jsp 를 전체 복사 후 . 새로운 main.jsp 로 옮겨주자 .
-- main.jsp 에는 index.jsp 의 코드가 싹 다 담겨있고.
-- 기존 index.jsp 에는 main.jsp 로 forward 해주는 코드만 남겨놓자 .
-- 그후 MianController 작성.
--- 아이디 저장 클릭시 , 쿠키가 저장되게 해보자 .
-- 로그인 기능하는 Controller 에서 , 로그인 성공시 쿠키를 넣어준다.
---로그아웃을 해보자.
--로그아웃 == 세션을 없애는것 .
session.invalidate() . 기존 세션 무효화 방식으로는 안된다.!
-- @SessionAttributes 를 이용해서 session scope 에 배치된 데이터는
SessionStatus 라는 별고 객체를 이용해야만 없앨수 있다 .
-- 로그아웃 누르면.
-- 다시돌아온다 .
'Spring > Spring' 카테고리의 다른 글
Spring 7 ( email , 닉네임 중복체크 ) (0) | 2023.04.26 |
---|---|
Spring 6 ( Bcrypt 암호화 ) (0) | 2023.04.26 |
Spring 4 ( DB 접근 +MyBatis 환경설정 ) (0) | 2023.04.24 |
Spring 3 ( 파라미터 가져오기 , 화면전환 ) (0) | 2023.04.21 |
Spring 2 ( 개발환경 ( STS )) (0) | 2023.04.21 |