스프링부트 112

Spring boot 예외처리! with Transactional

kim's cafe에이어 kim's shop을 만드는 도중 치명적인 오류가 있었다 무려 Transactional어노테이션이 먹히지 않았다.. 아예 작동하지 않았다 UPDATE문도 던지지 않고.. 근데 업데이트야 뭐 sql문을 던지면 되지만 제일 두려운 게 rollback이었다 어노테이션 덕에 rollback을 쉽게 알아서 해주는데 그걸 사용할 수 없게 된 거 같았다.. 결론 일단 해결했다 어노테이션 위치가 잘못되어있었다 흐름은 이렇다 프런트(3030)에서 요청->(8080)으로 전달 -> controller->confrimService->senPhone함수-> sendSms함수-> updateconfrim함수 이전에 난 updateconfrim에 어노테이션을 붙여 놓았다 즉 마지막에 SET이 이뤄지는 곳..

Springboot 인증 시스템 리팩토링!(2) with interface

이전소스 https://cordingmonster.tistory.com/107?category=1038496 Spring boot Jwt+휴대폰인증!(1) with Coolsms 이제 전화인증을 구현할 건데 아임 포트를 사용하려 했으나... 다날 서비스를 신청해야 하고 다날 서비스 신청에는 사업자등록증이 필요해서 허접하지만 직접 구현했다! 1. 세션 인증을 요청-> cordingmonster.tistory.com 검증 로직을 리팩터링 했으니 이제 보내는 로직도 리팩터링 해보자! 트랜잭셔널 어노테이션을 다시 사용하였다! https://cordingmonster.tistory.com/133 Spring boot 예외처리! with Transactional kim's cafe에이어 kim's shop을 만드는..

Springboot 인증 시스템 리팩토링!(1) with interface

이전 글 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 ema..

Springboot Jwt+마이페이지!(1) with 정보 표시하기

마이페이지를 만들어 보자 프런트 서버 html 오스 로그인 사용 자시 비밀번호변경 링크를 표시하지 않는다 비밀번호 변경 controller userService json->dto 만들어 주는 함수이다 백엔드 서버 userService 비밀번호는 주면 안 되니 null로 해서 보내주자 restcontroller 테스트 일반 로그인 소셜 로그인 구현할게 많아졌다 주소변경부터 해보자!

Springboot Jwt+비밀번호찾기!(2) with email

이제 인증번호를 검사하고 맞다면 임시 비밀번호를 전달해주자! userDao 현재 이상하게 트랜 잭 셔널이 작동을 안 한다... 그래서 쿼리를 일일이 쓰고 있는데 원인을 모르겠다 ㅠㅠ userService 간단하게 함수를 만들어준다 confrimService 인증 요청 내역이 있나 확인 confrimDto confrimDto=confimDao.findByEmail(emailCofrimDto.getEmail()); if(confrimDto!=null) 시간이 지났는지 확인 if(utillService.checkTime(confrimDto.getCreated(),overTime)==false) 인증번호가 맞는지 확인 if(emailCofrimDto.getTempNum().trim().equals(confrim..

Springboot Jwt+비밀번호 찾기!(1) with JavaMailSender

아이디도 찾았으니 비밀번호도 재설정해보자 두 가지 방법이 있다 문자인증->재설정 이메일 인증->재설정 문자인증은 구현해놨으니 이메일 인증만 다루도록 해보자! 역시 이전에 구현한 적이 있다 https://cordingmonster.tistory.com/40?category=1034325 Spring boot 비밀번호찾기!(1) 인증번호 발송 시스템은 이메일을 입력하면 db에 존재하는 이메일인지 확인하고 인증번호 요청을 누르면 인증번호가 가고 인증번호를 알맞게 제출하면 임시 비밀번호를 주고 db 비밀번호도 임시로 바뀌게 된 cordingmonster.tistory.com Dao 역시 내역이 존재한다면 update 하기 위해 쿼리문을 작성해준다 사실상 문자인증했을 때랑 똑같다고 보면 된다 Service 인증 ..

Springboot Jwt+아이디 찾기!

회원가입 때 받은 전화번호로 아이디를 찾아보자 그냥 휴대폰 인증 한 번 더 구현해보는 것이다! https://cordingmonster.tistory.com/107?category=1038496 Spring boot Jwt+휴대폰인증!(1) with Coolsms 이제 전화인증을 구현할 건데 아임 포트를 사용하려 했으나... 다날 서비스를 신청해야 하고 다날 서비스 신청에는 사업자등록증이 필요해서 허접하지만 직접 구현했다! 1. 세션 인증을 요청-> cordingmonster.tistory.com 이전 로직에서 바꿔져야 할 부분이 있다 if(userService.confrimPhone(phoneNum))를 제거해주자 이게 있으면 아이디 찾기 시 인증번호를 보낼 수없다 물론 다른 함수를 만들어서 써도 된다..

Springboot Jwt+로그인!(1) with successfulAuthentication/unsuccessfulAuthentication

회원가입을 했으니 로그인을 만들어보자! 이전에 만들었던 거에서 조금 바꿔보자! https://cordingmonster.tistory.com/95?category=1035704 Spring boot Jwt토큰 검증하기!(1) with BasicAuthenticationFilter 요청이 오면 시큐리티는 BasicAuthenticationFilter로 보내는 거 같다 왜냐면 테스트를 해봤는데 모든 페이지 이동시 이 필터가 걸려있는 쪽으로 온다 1.jwtAuthorizationFilter 만들기 헤더 검사 if(request.get.. cordingmonster.tistory.com JwtLoginFilter 이전과 다른 건 없고 딱하나 추가 했다 chain.doFilter(request, response)..

Springboot Jwt+회원가입 하기!(2) with RestControllerAdvice/ExceptionHandler

이제 유효성 검사 실패 시 메시지를 프런트에게 던져줘 보자 좀찾아보니 @valid도 익셉션도 핸들러로 해주면 되는거 같다 이전에도 예외는 한번 했었다 https://cordingmonster.tistory.com/64?category=1031826 Springboot 롤백! with @Transactional(rollbackFor = {Exception.class}) with save 고민이 있었다 게시글을 쓰는데 게시글은 넣고 사진을 등록하다가 에러가 터지면 전부 롤백을 해줘야 하는데 방법을 몰랐다 얼추 @Transactional을 가지고 한다고 들었는데 그래서 찾아봤다 https://d cordingmonster.tistory.com errorRestController 레스트 컨트롤러 전역 예외를 잡..

Springboot jwt+회원가입 하기!(2) with @Valid

이제 회원가입 시 간단한 유효성 검사를 해보자! @Valid를 사용하여 검사를 해보자 의존성 추가 implementation 'org.springframework.boot:spring-boot-starter-validation' 여기를 보면 기능들이 잘 나와있다 https://bamdule.tistory.com/35 [Spring Boot] @Valid 어노테이션으로 Parameter 검증하기 java.validation의 @Valid 어노테이션 사용법 정리 글입니다. Spring Boot 라이브러리에서 기본적으로 탑재된 기능이며 따로 dependency해 줄 필요가 없습니다. Spring Boot Version은 2.2.2.RELEASE 입니다. 1. j.. bamdule.tistory.com dto ..