스프링과 JPA 기반 웹 애플리케이션 개발 #58 스터디 설정 - 소개 수정

Jake Seo·2021년 6월 20일
0

스프링과 JPA 기반 웹 애플리케이션 개발 #58 스터디 설정 - 소개 수정

해당 내용은 인프런, 스프링과 JPA 기반 웹 애플리케이션 개발의 강의 내용을 바탕으로 작성된 내용입니다.

강의를 학습하며 요약한 내용을 출처를 표기하고 블로깅 또는 문서로 공개하는 것을 허용합니다 라는 원칙 하에 요약 내용을 공개합니다. 출처는 위에 언급되어있듯, 인프런, 스프링과 JPA 기반 웹 애플리케이션 개발입니다.

제가 학습한 소스코드는 https://github.com/n00nietzsche/jakestudy_webapp 에 지속적으로 업로드 됩니다. 매 커밋 메세지에 강의의 어디 부분까지 진행됐는지 기록해놓겠습니다.


결과 화면

대략 위와 같은 스터디 수정페이지를 만들 수 있으면 된다.

  • 소개 에서는 짧은 소개(short description)상세 소개(full description)를 변경할 수 있다.

HtmlEmailService

...
        } catch (MessagingException e) {
            e.printStackTrace();
            log.error("failed to send email", e);
            // 회원가입이 안됐음을 알리는 것이 좋을 것 같음.
            // 서버의 문제임을 명확히 알려야 함.
            throw new RuntimeException("메일 전송 도중 에러가 발생하였습니다. " + e);
        }

catch 블록에 throw new RuntimeException()을 추가하였다. 메일을 보내다가 예외가 발생한 경우 '메일 전송 도중 에러가 발생하였다'고 알린다. 또한 이렇게 예외를 던짐으로써, 트랜잭션이 정상적으로 끝나지 않고 롤백된다. 그래서 회원가입 진행 자체가 취소된다.

JPA 작업 도중 예외를 던지면, 트랜잭션이 롤백된다는 사실을 잘 인지하자.

전체적인 진행

딱히 따로 새로 배운 것은 없으며,

위 두 개에서 작성했던 폼처리 패턴과 정확히 동일한 패턴으로 작성하였다.

profile
풀스택 웹개발자로 일하고 있는 Jake Seo입니다. 주로 Jake Seo라는 닉네임을 많이 씁니다. 프론트엔드: Javascript, React 백엔드: Spring Framework에 관심이 있습니다.

0개의 댓글