Java 기반 클라우드 융합 개발자 과정 - KH 정보교육원/5월

22.05.27 - 회원 관리 기능 구현 [ 회원 정보 수정, 회원 탈퇴 ]

giggs 2022. 6. 1. 18:31

 

 

회원 관리

 

[ 회원 정보 수정 ]

[ 회원 탈퇴 ]

 

 

 

 


 

 

 

## 공통된 흐름 파악!

  • 10년 차가 되어도 이런 흐름으로 하는 것이다!

 

 

 

 

 

 

 


 

 

 

## 기본 세팅

 

 

1-1 메인에 추가할 메뉴 OR 기능 작성

 

 

 

 

 


 

 

 

1-2. 추가한 메뉴 OR 기능 패키지-클래스-메서드명 정하기 

  • Member 클래스의 edib() , quit() 메서드로 정함

 

 

 

 

기본 세팅 끝!

 

 

 

 

 

 


 

 

 

 

첫 번째 기능 구현

 

 

 

 

## 회원 탈퇴 기능 추가 

  • 회원의 데이터를 삭제하는 것이 아니라
  • 회원 탈퇴 칼럼의 값을 N에서  Y로 바꾼다.

 

 

 

1. 로그인한 유저만 회원탈퇴 기능 접근  가능하도록 조건 추가

  • 로그인을 - 한 경우와 / 하지 않은 경우 판단하는 메서드를 만들어서 CHECK
  • checkLogin( ); 

 

 

 

 

 

 


 

 

 

2. 탈퇴 여부를 입력받아서 각각의 경우 맞춰서 처리 

  • 로그인 조건 통과하고 나면 - 탈퇴 여부 ( Y/N ) 입력받아 처리해주기 
  • Y 입력 시 탈퇴처리하는 메서드 호출해서 처리하게 해 줌 - ( 탈퇴 여부 칼럼 명의 값을 Y로 변경 )
  • N 입력 시 탈퇴신청 X 

 

 

 

 

 


 

 

 

3. 탈퇴 처리 해주기

  • 사용자가 탈퇴 여부 Y입력 시 - DB에서 '회원 탈퇴 여부' 칼럼의 값을 Y로 변경해주는 메서드 
  • quitMember(); 실행

 

 

 

##공통 흐름 7단계 참고

  • 커넥션 얻고 - 쿼리 준비 - PSTMT [  생성(SQL전달) - 채우기  - 실행 ] - 결과 얻기 - 결과 따른 로직 작성하기

 

 

 

 

 

 

##쿼리 부분 해석

  • MEMBER 테이블의 데이터를 갱신(수정)한다 ----> UPDATE MEMBER. 
  • 현재 회원의 번호와 일치하는 칼럼에서 ----> WHERE NO = LoginUserNo;
  • 탈퇴 여부 칼럽의 값을 Y로 변경 ----> SET QUIT_YN = 'Y'

 

 

 

 


 

 

 

 

두 번째 기능 구현

 

 

 

 

## 회원정보 수정 기능 추가 

  • 수정할 정보를 선택하게 해 주고 
  • 선택에 따라서 UPDATE문 실행

 

 

 

 

 

 

 

## 공통 흐름 7단계 참고

  • 1. 커넥션 얻고 -
  • 2. 쿼리 준비
  • 3~4 PSTMT [  생성(SQL전달) - 채우기  - 실행 ] 
  • 5 결과 얻기
  • 6  결과 따른 로직 작성하기

 

 

 

 

1. 회원 정보 보여주기

 

 

 

 

 


 

 

 

2. 회원 정보 수정 진행해주기

 

 

 

 

 

 

## equalsIgonoreCase 

문자열 비교 방법 중 한 가지

대소문자 구분 없이 비교할 때 많이 사용

equals는 대소문자를 비교하지만

equalsIgonoreCase는 대소문자 구분없이 문자열 자체만으로 비교

문자열이 같은 경우 true / 다른 경우 false 리턴

 

 

 

 

 

 

# 나머지 시간은 miniProject 작성 시간으로 활용!

 

 

 

 


 

 

 

 

 




REVIEW



회원 탈퇴 기능 - 데이터 삭제가 아닌
탈퇴 여부 칼럼의 값을 Y로 변경하는 방식
회원 정보 수정 - 닉네임 변경
추후에 수정할 정보들 추가하도록 설정

2가지를 실습해보았다. 
이런 식으로 작동하도록 미니 플젝에 반영하면 될 듯!


정보 수정 메서드 안에
쿼리 날리고 채우고, 결과 얻어오고 하는 부분을
다 입력해 놓았으면 코드도 길고 보기도 힘들었을 텐데
showUserInfo() 메서드를
만들어서 사용하니 가독성이 더 좋아졌다.
이런 식으로 코드를 구성해야 할 듯하다. ㅎㅎ

로그인 판단 여부에서도 checkLogin() 사용한 것 체크!


이제 주말 동안 프로젝트를 마무리해야 한다.
콘솔 창으로 입력받아서 
강사님이 보여주신 방식으로 거의 구성이 되겠지만 ㅎㅎ
진행도 돼가고 뭔가 하나하나씩 갖춰져 가는 모습을 보니 
최종적으로 어떻게 될지 기대된다. 

남은 시간도 미니 플젝 마무리 파이팅!