实体对象 分为授权实体跟测试实体
授权实体
@Data
public class EmailAuthorization {
//网易163邮箱的SMTP服务器地址 smtp.qiye.aliyun.comprivate String host;
//网易163邮箱的SMTP服务器端口private String post;
//邮箱用户名private String username;
//邮箱密码private String password;
//可不填非必要参数private Properties properties;
}

参数实体

@Data
public class EmailMsgData {
//接收人private String to;
//标题private String title;
//内容private String content;}

调用方法类

import lombok.extern.slf4j.Slf4j;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Component;import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;@Component
@Slf4j
public class EmailSendMsgHandle {public void sendMsgOne(EmailAuthorization emailAuthorization, EmailMsgData emailMsgData){ArrayList<EmailMsgData> emailMsgDatas = new ArrayList<>();emailMsgDatas.add(emailMsgData);sendMsgBatch(emailAuthorization, emailMsgDatas);}public void sendMsgBatch(EmailAuthorization emailAuthorization, List<EmailMsgData> emailMsgDatas){log.info("发邮件");JavaMailSenderImpl mailSender = new JavaMailSenderImpl();if (null == emailAuthorization.getProperties()) {Properties properties = System.getProperties();properties.setProperty("mail.smtp.auth", "true");properties.setProperty("mail.smtp.host", emailAuthorization.getHost());//smtp服务器地址properties.setProperty("mail.smtp.from", emailAuthorization.getUsername());//mailfrom 参数properties.setProperty("mail.user",emailAuthorization.getUsername());//发件人的账号properties.setProperty("mail.password",emailAuthorization.getPassword());// 发件人的账号的密码,如果开启三方客户端安全密码请使用新生产的密码properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");properties.setProperty("mail.smtp.socketFactory.fallback", "false");properties.setProperty("mail.smtp.socketFactory.port", emailAuthorization.getPost());emailAuthorization.setProperties(properties);}mailSender.setDefaultEncoding("utf-8");mailSender.setJavaMailProperties(emailAuthorization.getProperties());mailSender.setHost(emailAuthorization.getHost());mailSender.setPassword(emailAuthorization.getPassword());mailSender.setUsername(emailAuthorization.getUsername());mailSender.setPort(Integer.parseInt(emailAuthorization.getPost()));MimeMessage message = mailSender.createMimeMessage();MimeMessageHelper helper = null;try {helper = new MimeMessageHelper(message, true);// 设置发送方邮箱地址helper.setFrom(emailAuthorization.getUsername());for (EmailMsgData emailMsgData : emailMsgDatas) {helper.setSubject(emailMsgData.getTitle());helper.setText(emailMsgData.getContent(), true);helper.setTo(emailMsgData.getTo());mailSender.send(message);}} catch (MessagingException e) {e.printStackTrace();}}
}

调用

@Autowired private EmailSendMsgHandle emailSendMsgHandle;

//授权参数装配

EmailAuthorization emailAuthorization = new EmailAuthorization();
//发送参数装配
EmailMsgData emailMsgData = new EmailMsgData();
//发送
emailSendMsgHandle.sendMsgOne(emailAuthorization,emailMsgData);

示例

阿里邮箱发送邮件 Java相关推荐

  1. tp5.1使用阿里邮箱发送邮件

    一. 下载PHPMailer github连接:https://github.com/PHPMailer/PHPMailer 二. 在extend新建文件夹PHPMailer,并将PHPMailer- ...

  2. 网易云邮箱发送邮件 java

    配置邮箱授权码 参考 https://blog.csdn.net/m0_58111460/article/details/124739059 代码模块 实体分为授权跟参数 //授权实体 @Data p ...

  3. (2022保姆级教程)使用Java向邮箱发送邮件、验证码

    材料:一个可以登录的邮箱(本文以qq邮箱为例子),Idea和脑子 第一步:登录自己的qq邮箱登录 QQ 邮箱 点击开启服务,会得到一个授权码,就像这个样子 保存一下这个一会要用到 第二步:打开IDEA ...

  4. java发送qq邮箱不成功_java,_使用QQ邮箱发送邮件遇到的问题,java - phpStudy

    使用QQ邮箱发送邮件遇到的问题 代码是在网上抄的别人今年写的,但是我运行起来一直报错,也不知道什么原因,请大神帮忙指点一下::谢谢!!! 以下是我的代码 public class Sendmail8 ...

  5. Java基于JavaMail实现向QQ邮箱发送邮件遇到的问题

    最近使用Java基于JavaMail实现向QQ邮箱发送邮件老是发送失败,在网上搜了下,终于找到原因,记录下. 参考:http://www.jb51.net/article/78405.htm 网上还有 ...

  6. 基于java mail实现简单的QQ邮箱发送邮件

    刚学习到java邮件相关的知识,先写下这篇博客,方便以后翻阅学习. -----------------------------第一步 开启SMTP服务 在 QQ 邮箱里的 设置->账户里开启 S ...

  7. Java腾讯企业邮箱发送邮件

    ##Java通过腾讯企业邮箱发送邮件(多人发送) 企业邮箱需要使用ssl private static String account = "企业邮箱账户";// 登录账户priva ...

  8. Java mail使用QQ邮箱发送邮件配置方案

    Java mail使用QQ邮箱发送邮件配置方案 java mail配置了QQ邮箱作为服务器发送邮件,结果导致出现503异常: Authentication failed; nested excepti ...

  9. java模拟网易邮箱登录_java实现163邮箱发送邮件到qq邮箱成功案例

    下载和上传附件.发送短信和发送邮件,都算是程序中很常用的功能,之前记录了文件的上传和下载还有发送短信,由于最近比较忙,邮件发送的功能就没有时间去弄,现在终于成功以163邮箱发送邮件到qq邮箱,以下是相 ...

最新文章

  1. shell脚本中判断上一个命令是否执行成功
  2. c语言-01背包问题
  3. 工业相机5A参数及其对图像采集的影响
  4. huffman算法c语言实验报告,huffman二叉树实验报告--数据结构(c语言).doc
  5. poj3187 穷竭搜索 挑战程序设计大赛
  6. 实现一个靠左靠右靠中间的listview
  7. 不允许创建临时变量交换两个变量的内容
  8. 消息中间件学习总结(3)——RocketMQ之十分钟入门RocketMQ
  9. Android 性能优化案例
  10. Ubuntu更改右键菜单
  11. 怎么把图片上的字去掉_视频片头怎么减掉,电脑如何剪切掉视频的开头「视频批量剪辑」...
  12. 打开outlook2010里面的链接显示 “由于本机的限制,该操作已被取消。请与系统管理员联系。”解决方法...
  13. 关于visual studio 2015 智能提示英文,而非中文的解决方案
  14. c# 图像识别 车辆型号【百度AI】
  15. c 上传文件路劲为服务器路径,获取上传文件的路径变成C:\fakepath\
  16. excel自动调整列宽_EXCEL选择性粘贴,这些招数你用过吗?
  17. php 转换带声调的字幕,PHP 汉字、拼音、unicode、声母、韵母互相转换
  18. ubuntu10.10 教育网 使用ipv6,亲测可用【经过再次验证与修正】
  19. 3D模型格式的一点总结
  20. k线图示列--基于HIGHSTOCK

热门文章

  1. 利用结巴和WordCloud进行中文分词及图云绘制入门
  2. 小技巧---扩展屏幕or投影屏幕,如何控制屏幕位于左边还是右边?
  3. nginx+tomcat LVS群集
  4. vue写百度网盘页面
  5. Edge浏览器主页被桔梗导航恶意绑定篡改的解决办法
  6. cacti、rrdtool调试
  7. 获取WP商店应用信息
  8. 基本变成语言-像我这样英语不好的
  9. [Python学习第一天]内置数据类型介绍,万物皆对象!
  10. 最短时间搞定算法:字节跳动Android岗算法题考前突击宝典