이전 글
https://cordingmonster.tistory.com/108?category=1038496
Springboot Jwt+휴대폰인증!(2) 인증번호 확인
이제 인증번호가 맞는지 안 맞는지 판별해보자 프런트 js json형태로 번호/입력 전송 let data=JSON.stringify({ "phoneNum":""+document.getElementById('phoneNum').value+"", "tempNum":""+document.ge..
cordingmonster.tistory.com
고민이 있었다 너무 비슷한 로직이었다
문자인증/전화인증 로직인데 둘 다 인증번호를 받아서 검사해주면 됐었다
그래서 떠오른 아이디어 아 이럴 때 인터페이스를 써볼까..?
하고 만들었다
interface
phone
service
인터페이스를 변수로 받아서 검사한다!
문제의 두 개의 함수 너무 비슷했다
하나는 핸드폰으로 인증번호 검사
하나는 이메일 검사 후 임시 비밀번호 발급
그리고 여기서 하나 더 이메일 인증번호 검사
사실상 3개는 같은 로직이 엄청 들어가게 된다
confrimDto confrimDto=confimDao.findByEmail(emailCofrimDto.getEmail());
confrimInterface confrimInterface=new emailConfrim(confrimDto);
JSONObject result=compareTempNum(confrimInterface,emailCofrimDto.getTempNum());
이 세줄의 코드로 둘의 엄청나게 겹치는 코드가 묶였다!
이전까지 인터페이스 음..? 가물가물 했었다
이번 계기로 머리에서 번개가 치는 느낌이 났다
아..! 이렇게 할 수 있구나!
앞으로 잘 활용할 수 있을 거 같다!
테스트
인증시간 초과(맞는 값은 틀린 값이 든 상관없이)
테스트는 맞는 값으로 지정
재전송 후 틀린 값 입력
재전송 후 맞는 값 입력
문자
인증시간 초과(맞는 값은 틀린 값이 든 상관없이)
테스트는 맞는 값으로 지정
재전송 후 틀린 값 입력
재전송 후 맞는 값 입력
성공 하지만!
회원 가입한 번호가 존재하지 않기에
찾기->메시지 출력
존재한다면
번호와 일치하는 이메일 표시!
트랜잭셔널 어노테이션을 추가하였다!
https://cordingmonster.tistory.com/133
Spring boot 예외처리!(2) with Transactional
kim's cafe에이어 kim's shop을 만드는 도중 치명적인 오류가 있었다 무려 Transactional어노테이션이 먹히지 않았다.. 아예 작동하지 않았다 UPDATE문도 던지지 않고.. 근데 업데이트야 뭐 sql문을 던지면
cordingmonster.tistory.com
'Spring boot kim's Shop > 리팩토링' 카테고리의 다른 글
Springboot 결제시스템 (7) 카카오페이 연동 (0) | 2021.09.08 |
---|---|
Springboot 예약+결제시스템 리펙토링! (0) | 2021.09.02 |
Springboot jwt인증 리펙토링 (0) | 2021.09.02 |
Springboot->html+자바스크립트로! (0) | 2021.08.31 |
Springboot 인증 시스템 리팩토링!(2) with interface (0) | 2021.08.14 |