From dbd3aacbbcc662c76e8f8cdd5ced5a7c15e40140 Mon Sep 17 00:00:00 2001 From: oznchex <114240463+oznchex@users.noreply.github.com> Date: Tue, 6 Aug 2024 00:25:55 +0900 Subject: [PATCH] =?UTF-8?q?feat=20:=20email=20=EB=B3=80=EC=88=98=20?= =?UTF-8?q?=EC=9E=91=EC=97=85=20=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mail/presentation/MailController.java | 3 +- .../linkit/mail/service/MailService.java | 2 +- .../linkit/mail/service/MailServiceImpl.java | 183 ++++++++---------- 3 files changed, 88 insertions(+), 100 deletions(-) diff --git a/src/main/java/liaison/linkit/mail/presentation/MailController.java b/src/main/java/liaison/linkit/mail/presentation/MailController.java index 4e81da03..019e022d 100644 --- a/src/main/java/liaison/linkit/mail/presentation/MailController.java +++ b/src/main/java/liaison/linkit/mail/presentation/MailController.java @@ -18,7 +18,6 @@ public class MailController { @PostMapping("") public void mailConfirm(@RequestParam(name = "email") String email) throws Exception { - String code = mailService.sendSimpleMessage(email); - log.info("사용자에게 발송한 인증코드 ==> " + code); + mailService.sendSimpleMessage(email); } } diff --git a/src/main/java/liaison/linkit/mail/service/MailService.java b/src/main/java/liaison/linkit/mail/service/MailService.java index d23013a9..207a0b68 100644 --- a/src/main/java/liaison/linkit/mail/service/MailService.java +++ b/src/main/java/liaison/linkit/mail/service/MailService.java @@ -2,5 +2,5 @@ public interface MailService { // 메일 발송 - String sendSimpleMessage(String to)throws Exception; + void sendSimpleMessage(String to)throws Exception; } diff --git a/src/main/java/liaison/linkit/mail/service/MailServiceImpl.java b/src/main/java/liaison/linkit/mail/service/MailServiceImpl.java index 744e2514..0f2c9149 100644 --- a/src/main/java/liaison/linkit/mail/service/MailServiceImpl.java +++ b/src/main/java/liaison/linkit/mail/service/MailServiceImpl.java @@ -17,128 +17,117 @@ @Slf4j @Transactional public class MailServiceImpl implements MailService { - // MailConfig에서 등록해둔 Bean을 autowired하여 사용하기 private final JavaMailSender emailSender; - // 사용자가 메일로 받을 인증번호 - private String key; - @Value("${naver.id}") private String id; - // 메일 발송 - // sendSimpleMessage 의 매개변수 to는 이메일 주소가 되고, - // MimeMessage 객체 안에 내가 전송할 메일의 내용을 담는다 - // bean으로 등록해둔 javaMail 객체를 사용하여 이메일을 발송한다 @Override - public String sendSimpleMessage(String to) throws Exception { - MimeMessage message = creatMessage(to); // "to" 로 메일 발송 + public void sendSimpleMessage(String to) throws Exception { + MimeMessage message = createMessage(to); // "to" 로 메일 발송 log.info("********생성된 메시지******** => " + message); - // 예외처리 try { - // 이게 메일로 보내주는 메소드 emailSender.send(message); } catch (Exception e) { e.printStackTrace(); throw new IllegalArgumentException(); } - // 메일로 사용자에게 보낸 인증코드를 서버로 반환! 인증코드 일치여부를 확인하기 위함 - return key; } - // 메일 내용 작성 - private MimeMessage creatMessage(String to) throws MessagingException, UnsupportedEncodingException { + private MimeMessage createMessage(String to) throws MessagingException, UnsupportedEncodingException { log.info("메일받을 사용자 : " + to); - log.info("인증번호 : " + key); MimeMessage message = emailSender.createMimeMessage(); message.addRecipients(Message.RecipientType.TO, to); - // 이메일 제목 message.setSubject("관리자 회원가입을 위한 이메일 인증코드"); - String msgg = ""; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " "; - msgg += "
"; - msgg += "
"; - msgg += "
"; - - msgg += "
"; - msgg += " 👋👋"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " [내 이름]님 안녕하세요, 링킷"; - msgg += " 입니다.
"; - msgg += " [내 이름]님이 정성스럽게 써주신 이력서를 통해
"; - msgg += " [Sukki]님께서 7월"; - msgg += " 12일에 매칭 요청을 주셨습니다.
"; - msgg += " 소개글을 확인하고 매칭 요청에 응답해 보세요!"; - msgg += "
"; - msgg += "
"; - - msgg += "
"; - msgg += "
"; - - msgg += "
"; - msgg += "
"; - msgg += "
📮
"; - msgg += "
Sukki님의 소개글
"; - msgg += "
"; - msgg += " 매칭 요청 본문"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " Sukki님의 이력
"; - msgg += "
"; - msgg += " 홍익대학교 시각디자인과 재학 중 초기 창업팀 근무 경험(5개월)"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " 프로필 보러가기
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - - msgg += "
"; - msgg += " "; - msgg += "
"; - - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " "; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += " 메일링 후 필요한 푸터 내용이 있으면 여기 넣어주세요"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - msgg += "
"; - - // 메일 내용, charset타입, subtype - message.setText(msgg, "utf-8", "html"); + // Define dynamic content + String recipientName = "Recipient Name"; // e.g., fetched from user info + String senderName = "Sukki"; + String requestDate = "7월 12일"; + String matchingRequestMessage = "매칭 요청 본문"; + String profileSummary = "홍익대학교 시각디자인과 재학 중 초기 창업팀 근무 경험(5개월)"; + + // Use String.format() to insert variables into the message body + String msgg = String.format(""" +
+
+
+
+ +
+
+ +
+ 👋👋 +
+
+
+ %s님 안녕하세요, 링킷 + 입니다.
+ %s님이 정성스럽게 써주신 이력서를 통해
+ %s님께서 %s에 매칭 요청을 주셨습니다.
+ 소개글을 확인하고 매칭 요청에 응답해 보세요! +
+
+ +
+
+ +
+
+
📮
+
%s님의 소개글
+
+ %s +
+
+
+ +
+
+
+ %s님의 이력
+
+ %s +
+ +
+
+ +
+ +
+ +
+
+ +
+
+ +
+
+
+
+ """, recipientName, recipientName, senderName, requestDate, senderName, matchingRequestMessage, senderName, profileSummary, senderName); - // 보내는 사람의 이메일 주소, 보내는 사람 이름 + message.setText(msgg, "utf-8", "html"); message.setFrom(id); - log.info("********creatMessage 함수에서 생성된 msg 메시지********" + msgg); - log.info("********creatMessage 함수에서 생성된 리턴 메시지********" + message); + log.info("********createMessage 함수에서 생성된 msgg 메시지********" + msgg); + log.info("********createMessage 함수에서 생성된 리턴 메시지********" + message); return message; } - }