本文介紹兩種方式發送email檔案
spring boot 整合email 傳送檔案
spring boot 利用hutool 整合email 傳送檔案
#傳送email檔案需要開啟pop
##spring boot 整合email 發送檔案導入依賴<!--spring mail start--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
spring: mail: default-encoding: utf-8 host: smtp.aliyun.com username: 邮箱账号 password: 密码
package com.example.easypoi.rest; import lombok.RequiredArgsConstructor; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import java.util.List; /** * @author ccubee * @since 2021/12/31 14:37 */ @RestController @RequestMapping("poi") @RequiredArgsConstructor public class ExcelRest { private final JavaMailSender javaMailSender; @GetMapping("bootSend") public String bootSend() { MimeMessage message = javaMailSender.createMimeMessage(); MimeMessageHelper messageHelper = null; try { messageHelper = new MimeMessageHelper(message, true, CharsetUtil.UTF_8); messageHelper.setTo("zt7086@126.com"); messageHelper.setFrom("ccubee@aliyun.com"); messageHelper.setSubject("subject"); // messageHelper.addAttachment( "book.xls", file); // true 表示启动HTML格式的邮件 messageHelper.setText("<html><head></head><body><h2>测试</h2></body></html>", true); javaMailSender.send(message); } catch (MessagingException e) { e.printStackTrace(); } return "成功"; } }
舊版
<dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.6.2</version> </dependency>新版
<dependency> <groupId>com.sun.mail</groupId> <artifactId>jakarta.mail</artifactId> <version>1.6.7</version> </dependency>也可以直接daoru spring boot email依賴
<!--spring mail start--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>設定檔在classpath(標準Maven專案中為
src/main/resources)的config目錄下新建
mail.setting文件,最小配置內容如下,在此配置下,smtp伺服器和使用者名稱都將透過from參數識別:
form
user都是傳送檔案位址
阿里雲信箱的
user是信箱的完整位址,也就是
xxx@aliyun .com
# 邮件服务器的SMTP地址,可选,默认为smtp.<发件人邮箱后缀> host = smtp.yeah.net # 邮件服务器的SMTP端口,可选,默认25 port = 25 # 发件人(必须正确,否则发送失败) from = hutool@yeah.net # 用户名,默认为发件人邮箱前缀 user = hutool # 密码(注意,某些邮箱需要为SMTP服务单独设置授权码,详情查看相关帮助) pass = q1w2e3測試
@GetMapping("testEmail") public String send() { MailUtil.send("123@qq.com", "测试", "邮件来自Hutool测试", false); return "ok"; }也可以傳送文件,參考
hutool 文檔即可
以上是springboot hutool整合email的方法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!