您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页邮件服务程序,能发送简单文本邮件和包含图片及附件的邮件!

邮件服务程序,能发送简单文本邮件和包含图片及附件的邮件!

来源:五一七教育网

一、简单的纯文本邮件

pom文件

pom文件要添加与邮箱有关的依赖,这个springboot官方已经帮我们做好了,可以直接用,不用找第三方依赖。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

SendEmailService

@Service
public class SendEmailService {
    @Autowired
    private JavaMailSenderImpl mailSender;
    @Value("${spring.mail.username}")
    private String from;
    public void sendSimpleEmail(String to,String subject,String text){
        //定制纯文本邮件信息SimpleMailMessage
        SimpleMailMessage message=new SimpleMailMessage();
        message.setFrom(from);
        message.setTo(to);
        message.setSubject(subject);
        message.setText(text);
        try{
           mailSender.send(message);
           System.out.println("纯文本邮件发送成功");
        }catch (MailException e){
           System.out.println("纯文本邮件发送失败"+e.getMessage());
           e.printStackTrace();
        }
    }
}

yaml文件

spring:
  mail:
    host: smtp.qq.com
    port: 587
    username: 你的邮箱账号(比如QQ邮箱:XXXXX@qq.com)
    password: 这个不一定是密码,QQ邮箱好像是要绑定手机号,给一个手机发个信息得到的,具体的大家可以去搜索了解一下
    default-encoding: UTF-8

测试类编写测试函数

在这里我设置的主题名为纯文本测试,发送的内容是青青子衿,悠悠我心。但为君故,沉吟至今。
写到此处,笔者不禁感概,曹孟德的诗很有感染力,在此处,虽是抒发曹孟德对人才的渴望。但是现在很多人喜欢用这两句来表达爱意,我也一样。虽然作为一名理工男,很难懂得如何去爱一个女孩,但是我一直在准备,一直在锻炼自我,希望有一天我也可以遇到我的"青青子衿",为了她,我沉吟至今。

@SpringBootTest
class Springboot0119ApplicationTests {

    @Autowired
    private SendEmailService sendEmailService;
    @Autowired
    private TemplateEngine templateEngine;
    @Test
    public void sendSimpleMailTest() {
        String to = "你的QQ邮箱";
        String subject = "纯文本文件测试";
        String text = "青青子衿,悠悠我心。但为君故,沉吟至今。";
        // 发送简单邮件
        sendEmailService.sendSimpleEmail(to, subject, text);
    }

收到邮箱

二、发送有图片和附件的复杂邮件

SendEmailService

 public void sendComplexEmail(String to, String subject, String text, String filePath, String rscId, String rscPath) {
        // 定制复杂邮件信息MimeMessage
        MimeMessage message = mailSender.createMimeMessage();
        try {
            // 使用MimeMessageHelper帮助类,并设置multipart多部件使用为true
            MimeMessageHelper helper = new MimeMessageHelper(message, true);
            helper.setFrom(from);
            helper.setTo(to);
            helper.setSubject(subject);
            helper.setText(text, true);
            // 设置邮件静态资源
            FileSystemResource res = new FileSystemResource(new File(rscPath));
            helper.addInline(rscId, res);
            // 设置邮件附件
            FileSystemResource file = new FileSystemResource(new File(filePath));
            String fileName = filePath.substring(filePath.lastIndexOf(File.separator));
            helper.addAttachment(fileName, file);
            // 发送邮件
            mailSender.send(message);
            System.out.println("复杂邮件发送成功");
        } catch (javax.mail.MessagingException e) {
            System.out.println("复杂邮件发送失败 " + e.getMessage());
            e.printStackTrace();
        }
    }

测试类

 @Test
    public void sendComplexEmailTest() {
        String to="你的QQ邮箱";
        String subject="图片";
        // 定义邮件内容
        StringBuilder text = new StringBuilder();
        text.append("<html><head></head>");
        text.append("<body><h3>魏晋风度指的是魏晋时期名士们所具有的那种率直任诞、清俊通脱的行为风格。饮酒、服药、清谈和纵情山水是魏晋时期名士所普遍崇尚的生活方式。一部《世说新语》可以说是魏晋风度的集中记录。</h3>");
        // cid为固定写法,rscId指定一个唯一标识
        String rscId = "img001";
        text.append("<img src='cid:" +rscId+"'/></body>");
        text.append("</html>");
        // 指定静态资源文件和附件路径
        String rscPath="D:\\大二上\\SpringBoot\\springboot01_19\\src\\main\\resources\\static\\images\\魏晋.webp";//备注,这里需要在static下面建一个images包,下面可以放一张照片,然后这里填入它的绝对路径。
        String filePath="D:\\大二上\\SpringBoot\\springboot01_19\\src\\main\\resources\\application.yaml";//此处也是同上之理,我们要测试发送一个附件,这里就用application.yaml文件吧,然后还是一样这里放他的绝对路径。
        // 发送复杂邮件
        sendEmailService.sendComplexEmail(to,subject,text.toString(),filePath,rscId,rscPath);
    }

发送复杂邮件测试

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务