스프링과 JPA 기반 웹 애플리케이션 개발 #50 SMTP 설정 (스프링부트로 메일 보내기)

Jake Seo·2021년 6월 11일
0

스프링과 JPA 기반 웹 애플리케이션 개발 #50 SMTP 설정

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

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

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


SMTP 설정

spring.mail.host=smtp.gmail.com
spring.mail.port=587
# 나의 G메일 계정
spring.mail.username= 
# 발급받은 App 패스워드
spring.mail.password= 

스프링 부트 프로젝트에서 메일을 보내는 원리

  1. properties 파일에서 spring.mail...에 관한 설정을 해준다.
  2. 스프링 부트는 이를 인식하고 해당 정보를 이용하여 JavaMailSender라는 빈을 생성하고 스프링 컨테이너에 올려준다.
  3. JavaMailSender를 쓰고싶은 빈에서 JavaMailSender를 주입받아 이용한다.

properties 설정

spring.mail.host=smtp.gmail.com
spring.mail.port=587
spring.mail.username=n00nietzsche@gmail.com
spring.mail.password=
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.timeout=5000
spring.mail.properties.mail.smtp.starttls.enable=true

위와 같이 설정을 해주면 된다. 위에서 password에 해당하는 부분은 https://support.google.com/mail/answer/185833 여기에서 볼 수 있다.

어찌됐든, SMTP 서버만 갖고 있으면 스프링 부트의 JavaMailSender를 통해 메일을 보낼 수 있다.

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

0개의 댓글