作者:云鹤 | 来源:互联网 | 2023-09-18 10:08
这里经介绍如何代码实现各种邮件的发送,文末有项目源码1.项目结构2.准备好上面要发送的邮件内容,以及发送的邮箱**注意:**该邮箱要开通smtp服务,具体如何开通晚上又很多方法,这
这里经介绍如何代码实现各种邮件的发送,文末有项目源码
1.项目结构
2.准备好上面要发送的邮件内容,以及发送的邮箱
**注意:**该邮箱要开通smtp服务,具体如何开通晚上又很多方法,这里不做介绍
下面是properties的内容,注意改成自己的邮箱
3.编写核心功能类
下面将分成不同类型的邮件一一展示源代码
文本邮件
@RequestMapping("/sendMail")
public String sendMail() {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(sender);
message.setTo(receiver);
message.setSubject("txt这里是发送的邮件主题");
message.setText("这里写的是邮件的内容");
try {
javaMailSender.send(message);// 发送
logger.info("简单邮件已经发送。");
} catch (Exception e) {
logger.error("发送简单邮件时发生异常!", e);
}
return "success";
}
html邮件
@RequestMapping("/sendHtmlMail")
public String testHtmlMail() {
String content="\n" +
"\n" +
" hello world ! 这是一封Html邮件!
\n" +
"\n" +
"";
MimeMessage message = javaMailSender.createMimeMessage();
try {
//true表示需要创建一个multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(sender);
helper.setTo(receiver);
helper.setSubject("html这里是发送的邮件主题");
helper.setText(content, true);
javaMailSender.send(message);
logger.info("html邮件发送成功");
} catch (MessagingException e) {
logger.error("发送html邮件时发生异常!", e);
}
return "success";
}
附件邮件
@RequestMapping("/sendFilesMail")
public String sendFilesMail() {
String filePath="./file/file.txt";
MimeMessage message = javaMailSender.createMimeMessage();
try {
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(sender);
helper.setTo(receiver);
helper.setSubject("附件邮件,这里是发送的邮件主题");
helper.setText("这是一封带附件的邮件", true);
FileSystemResource file = new FileSystemResource(new File(filePath));// 以文件系统的绝对路径的方式访问静态资源
String fileName = filePath.substring(filePath.lastIndexOf("/"),filePath.lastIndexOf("."));// 获取文件名
helper.addAttachment(fileName, file); // 添加附件(文件)
javaMailSender.send(message);
logger.info("带附件的邮件已经发送。");
} catch (Exception e) {
logger.error("发送带附件的邮件时发生异常!", e);
}
return "success";
}
图片邮件
@RequestMapping("/sendInlineResourceMail")
public String sendInlineResourceMail() {
String Id = "lk";//这里可以任意
String content="这是有图片的邮件: + Id + "\' >";
String imgPath = "./file/png.png";
MimeMessage message = javaMailSender.createMimeMessage();
try {
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(sender);
helper.setTo(receiver);
helper.setSubject("这是有图片的邮件,这里是发送的邮件主题");
helper.setText(content, true);
FileSystemResource res = new FileSystemResource(new File(imgPath));
helper.addInline(Id, res); // 将图片放到 Id处
javaMailSender.send(message);
logger.info("嵌入静态资源的邮件已经发送。");
} catch (MessagingException e) {
logger.error("发送嵌入静态资源的邮件时发生异常!", e);
}
return "success";
}
项目源码:
https://gitee.com/lk0423/MY_SpringBoot_Study/tree/master/springboot_mail