1. 程式人生 > >SprongBoot傳送郵件(四)傳送帶圖片的郵件

SprongBoot傳送郵件(四)傳送帶圖片的郵件

    /**
     * @param to
     * @param subject
     * @param content
     * @param rscPath 檔案路徑
     * @param rscId
     */
    public void sendInlinResourceMail(String to, String subject, String content,
                                      String rscPath, String rscId) {

        MimeMessage message = javaMailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true);

        helper.setFrom(from);
        helper.setTo(to);
        helper.setSubject(subject);
        helper.setText(content, true);

        FileSystemResource res = new FileSystemResource(new File(rscPath));

        //可以傳送帶多個圖片的郵件
        helper.addInline(rscId, res);
        helper.addInline(rscId, res);

        javaMailSender.send(message);
           

    }

在測試類中新增測試方法:

    @Test
    public void sendInlinResourceMailTest() throws MessagingException {
        String imgPath = "H:\\images\\sctu\\sctu_logo.png";
        String rscId = "test001";
        String content = "<html><body>" +
                "這是有圖片的郵件:<img src=\'cid:" + rscId + "\'></img>" +
                "這是有圖片的郵件:<img src=\'cid:" + rscId + "\'></img>" +
                "</body></html>";
        mailService.sendInlinResourceMail("
[email protected]
", "傳送帶圖片的郵件", content, imgPath, rscId); }

文中程式碼演示了傳送兩張圖片的郵件,實際開發中,應該使用類似於陣列的資料結構來儲存檔案路徑,用遍歷的方式新增圖片。

至此,傳送帶圖片的郵件就完成啦!