iT邦幫忙

2024 iThome 鐵人賽

DAY 20
0
Software Development

Spring boot 從零到寫出ChatGPT系列 第 20

Spring boot 從零開始 (20) - Spring boot send mail 撰寫 & 發信

  • 分享至 

  • xImage
  •  

昨天我們已經設定針對要用Spring boot 寄送mail的部分進行安裝設定&申請,今天我們就來教大家怎麼撰寫Mail

撰寫Mail

新增一個Service

  • 注入JavaMailSender
@Service
public class SendMailService {

    @Autowired
    private JavaMailSender mailSender;
}

撰寫一封最簡單的純文字Mail

  • SimpleMailMessage物件可以去針對收件者/信件主旨/信件內容去進行設定
    public void sendSampleTextMail() {
        SimpleMailMessage message = new SimpleMailMessage();
        // receiver mail
        message.setTo("test@gmail.com");
          // sender mail
        message.setFrom("yourMail@gmail.com>");
        // mail subject
        message.setSubject("Test");
        // text in mail
        message.setText("test mail");

        mailSender.send(message);
    }
  • setTo : 裡面填寫的就是收件者信箱
  • setFrom : 裡面填寫的就是寄件者
  • setSubject : mail的主旨

接著我們可以去寫一個測試程式,測試看看我們寫的方法是否可以成功寄信

@SpringBootTest
public class SendMailServiceTest {
    @InjectMocks
    private SendMailService mailService;

    @Mock
    private JavaMailSender javaMailSender;



    @Before
    public void setUp() {
        MockitoAnnotations.initMocks(this);
        mailService = new SendMailService(javaMailSender);
    }

    @Test
    public void sendTestEmail() {
        mailService.sendSampleTextMail();
    }
}

如果成功的話,我們就會收到以下的信件 👇
https://ithelp.ithome.com.tw/upload/images/20241004/20112118fp8jL8mQwL.png

要分享的東西好多,每天都有好多想分享的內容,明天我在想想要繼續分享mail還是先跳下一個內容 😇

參考來源

spring-boot-sending-email


上一篇
Spring boot 從零開始 (19) - Spring boot send mail 環境設定 & 申請
下一篇
Spring boot 從零開始 (21) - 來撰寫Unit Test 之Junit介紹
系列文
Spring boot 從零到寫出ChatGPT30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言