0%

邮件带附件发送

邮件带附件发送

依赖

1
2
3
4
5
6
7
8
9
10
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.5</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.3.29.RELEASE</version>
</dependency>

有时候发送邮件需要带有附件,可以使用MimeMessageHelper来进行发送附件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
JavaMailSenderImpl sender = new JavaMailSenderImpl();
sender.setHost("smtp.exmail.qq.com");
sender.setPort(587); // 默认就是25
sender.setUsername("username");
sender.setPassword("password");
sender.setDefaultEncoding("UTF-8");

// 配置文件对象
Properties props = new Properties();
props.put("mail.smtp.auth", "true"); // 是否进行验证
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtps.ssl.checkserveridentity", "true");
props.put("mail.smtps.ssl.trust", "*");
Session session = Session.getInstance(props);
sender.setSession(session);

MimeMessage mail = sender.createMimeMessage();

MimeMessageHelper helper;
try {
// 开启发送文件
helper = new MimeMessageHelper(mail,true);
} catch (MessagingException e) {
return false;
}


try {
helper.setTo(to); // 发送给谁
helper.setCc(cc); // 抄送
helper.setSubject(title); // 标题
helper.setFrom("username"); // 来自
// 邮件内容,第二个参数指定发送的是HTML格式
helper.setText(textBody, true);
// 发送附件
helper.addAttachment(file.getName(),file);
sender.send(mail); // 发送
}catch(Exception e) {
}

欢迎关注我的其它发布渠道