zoukankan      html  css  js  c++  java
  • springboot框架集成邮箱功能

    大致步骤还是遵循三部曲(导包配置)

    1、导包

    首先导入必要的包,版本默认和web版本一致

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

    2、配置

    首先开启邮箱的SMTP服务:

    首先打开自己的qq邮箱,然后打开设置中的账户

     然后通过短信开启POP3/SMTP服务,记下自己的授权码

     然后使用IMAP服务

    最后配置项目的配置文件,端口号要用默认的25,如下:

    spring:
      mail:
        host: smtp.qq.com
        username: qq邮箱
        password: 授权码
        port: 25
        default-encoding: utf-8
    

    3、测试

    测试就直接上代码了

    public class MyTest {
    
        @Resource
        JavaMailSenderImpl javaMailSender;
        
        @Test
        public void handler(){
            MimeMessage mimeMessage = javaMailSender.createMimeMessage();
            try {
                MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage,true);
                mimeMessageHelper.setFrom("发送人邮箱","发送人昵称");
                mimeMessageHelper.setTo("接收人邮箱");
                mimeMessageHelper.setSubject("标题");
                mimeMessageHelper.setText("内容");
                javaMailSender.send(mimeMessage);
                System.out.println("发送完成");
            } catch (MessagingException e) {
                e.printStackTrace();
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        }
    
    }
    

    4、封装应用

    首先封装一个实体类包括如下属性

    public class MailVo {
        private String to;//发送给谁
        private String from;//谁发送的
        private String personal;//用户民
        private String subject;//主题
        private String content;//内容
    }
    

     然后通过一个实体对象来请求邮件

    @Resource
    JavaMailSender javaMailSender;
    
    @PostMapping("/send")
    CommonResult send(MailVo mailVo){
        MimeMessage mimeMessage = javaMailSender.createMimeMessage();
        try {
            MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true);
                helper.setFrom(mailVo.getFrom(),mailVo.getPersonal());
                helper.setTo(mailVo.getTo());
                helper.setSubject(mailVo.getSubject());
                helper.setText(mailVo.getContent(),true);
                javaMailSender.send(mimeMessage);
         } catch (MessagingException e) {
                e.printStackTrace();
         } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
         }
    }

    这样就可以成功发送邮件了。当然邮件的内容不止文字的形式,还可以发送html格式等等。

     5、成功

     

  • 相关阅读:
    hdu1430 魔板(康拓展开 bfs预处理)
    网络流EdmondsKarp算法模板理解
    poj3020 建信号塔(匈牙利算法 最小覆盖边集)
    bzoj 2465 小球
    bzoj 1822 冷冻波
    bzoj 1040 骑士
    Codeforces Round #460 (Div. 2)
    bzoj 1072 排列perm
    Codeforces Round #459 (Div. 2)
    bzoj 1087 互不侵犯King
  • 原文地址:https://www.cnblogs.com/mvpmvp/p/13684473.html
Copyright © 2011-2022 走看看