整合QQ邮箱

1.整合依赖
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-mail</artifactId>
 </dependency>
2.项目配置(放入mail.properties中)
 mail.host=smtp.qq.com
 mail.username=<邮箱地址:**@**.com>
 mail.password=<邮箱密码>//放入邮箱的授权码
 mail.smtpAuth=true
 mail.smtpStarttlsEnable=true
 mail.smtpStarttlsRequired=true
 mail.defaultEncoding=UTF-8
3.创建配置类
 package com.example.mail.config;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.context.annotation.PropertySource;
 import org.springframework.stereotype.Component;
 @Component
 @PropertySource("classpath:mail.properties")
 @ConfigurationProperties(prefix = "mail")
 public class MailConfig {
     private String host;
     private String username;
     private String password;
     private String smtpAuth;
     private String smtpStarttlsEnable;
     private String smtpStarttlsRequired;
     private String defaultEncoding;
     // 省略getter/setter
 }
4.创建工具类
  package com.example.mail.utils;
 import com.example.mail.config.MailConfig;
 import org.springframework.mail.SimpleMailMessage;
 import org.springframework.mail.javamail.JavaMailSenderImpl;
 import org.springframework.stereotype.Component;
 import javax.annotation.Resource;
 import java.util.Properties;
 @Component
 public class MailUtils {
     @Resource
     private MailConfig mailConfig;
     /**
     * 发送邮件
     *
     * @param to      收件人
     * @param title   标题
     * @param content 正文
     * @return
     */
     public boolean sendMail(String to, String title, String content) {
         try {
             SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
             simpleMailMessage.setFrom(mailConfig.getUsername());
             simpleMailMessage.setTo(to);
             simpleMailMessage.setSubject(title);
             simpleMailMessage.setText(content);
             JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
             javaMailSender.setUsername(mailConfig.getUsername());
             javaMailSender.setHost(mailConfig.getHost());
             javaMailSender.setPassword(mailConfig.getPassword());
             javaMailSender.setDefaultEncoding(mailConfig.getDefaultEncoding());
             Properties properties = new Properties();
             properties.setProperty("mail.smtp.auth", mailConfig.getSmtpAuth());
             properties.setProperty("mail.smtp.starttls.enable", mailConfig.getSmtpStarttlsEnable());
             properties.setProperty("mail.smtp.starttls.required", mailConfig.getSmtpStarttlsRequired());
             javaMailSender.setJavaMailProperties(properties);
             javaMailSender.send(simpleMailMessage);
             return true;
         } catch (Exception e) {
             e.printStackTrace();
             return false;
         }
     }
 }
5.创建测试控制类
 package com.example.mail.controller;
 import com.example.mail.utils.MailUtils;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
 import javax.annotation.Resource;
 @RestController
 public class TestController {
     @Resource
     private MailUtils mailUtils;
     @GetMapping("/")
     public boolean test() {
         String to = "**@**.**";
         String title = "Test SpringBoot Mail";
         String content = "测试内容";
         return mailUtils.sendMail(to, title, content);
     }
 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值