前提:

qq邮箱要开通pop3服务协议,操作:qq邮箱-设置-账户-开启pop3,并记录生成的验证码。

执行代码:

public class MailUtil {private static final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";private static final String SMTP_HOST = "smtp.qq.com";private static final String SMTP_PORT = "465";private static final String SMTP_USER = "156545385@qq.com";private static final String SMTP_SENDER = "156545385@qq.com";private static final String SMTP_PASSWORD = "******"; //******public static boolean send(String toRecipient, String subject, String text) {List<String> toRecipients = new ArrayList<>();toRecipients.add(toRecipient);return send(toRecipients, subject, text, false, null);}/*** 邮件发送* @param toRecipient 接收人* @param subject 主题* @param html 内容* @return*/public static boolean sendHtml(String toRecipient, String subject, String html) {List<String> toRecipients = new ArrayList<>();toRecipients.add(toRecipient);return send(toRecipients, subject, html, true, null);}public static boolean send(List<String> toRecipients, String subject, String content, boolean isHtml, List<String> attachmentNames) {//验证和处理邮箱地址if (SMTP_HOST == null || SMTP_PORT == null || SMTP_USER == null|| SMTP_PASSWORD == null || SMTP_SENDER == null) {return false;}if (toRecipients == null) {return false;}Properties properties = new Properties();properties.put("mail.smtp.host", SMTP_HOST);properties.put("mail.smtp.auth", "true");properties.put("mail.smtp.socketFactory.class", SSL_FACTORY);//使用JSSE的SSL socketfactory来取代默认的socketfactoryproperties.put("mail.smtp.socketFactory.fallback", "false");//只处理SSL的连接,对于非SSL的连接不做处理properties.put("mail.smtp.port", SMTP_PORT);properties.put("mail.smtp.socketFactory.port", SMTP_PORT);Session session = Session.getDefaultInstance(properties, new Authenticator() {protected PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication(SMTP_USER, SMTP_PASSWORD);}});//session.setDebug(true); //debug信息MimeMessage message = new MimeMessage(session);try {// 发件人Address address = new InternetAddress(SMTP_SENDER);message.setFrom(address);// 收件人for (String recipient : toRecipients) {Address toAddress = new InternetAddress(recipient);message.addRecipient(MimeMessage.RecipientType.TO, toAddress);}toRecipients.clear();// 主题message.setSubject(MimeUtility.encodeText(subject, "UTF-8", "B"));// 时间message.setSentDate(new Date());// 主体Multipart multipart = new MimeMultipart();// 主体:正文BodyPart bodyPart = new MimeBodyPart();if (isHtml) {bodyPart.setContent(content, "text/html; charset=utf-8");} else {bodyPart.setText(content);}multipart.addBodyPart(bodyPart);// 主体:附件if (attachmentNames != null && attachmentNames.size() > 0) {for (String fileName : attachmentNames) {BodyPart adjunct = new MimeBodyPart();FileDataSource fileDataSource = new FileDataSource(fileName);adjunct.setDataHandler(new DataHandler(fileDataSource));adjunct.setFileName(MimeUtility.encodeText(fileDataSource.getName(), "UTF-8", "B"));multipart.addBodyPart(adjunct);}attachmentNames.clear();}message.setContent(multipart);message.saveChanges();Transport.send(message);return true;} catch (Exception e) {e.printStackTrace();return false;}}public static void main(String[] args) {boolean result = sendHtml("498868659@qq.com", "测试邮件", "<html><head></head><body><h1>你好</h1><p>这是正文, 这是<i>正文</i>.</p></body></html>");System.out.println(result);}
}

Java使用qq邮箱发送email相关推荐

  1. 最简单Java实现QQ邮箱发送验证码

    Java使用QQ邮箱发送验证码 1. 开启服务,获取授权码 需登录自己的QQ邮箱,打开 POP3/SMTP 服务,并获取授权码. 具体操作: 登录邮箱 邮箱首页 "设置" 选择 & ...

  2. Java实现QQ邮箱发送给网易邮箱,发送邮件+附件

    实现功能: Java实现 QQ邮箱 给网易邮箱发送邮件 获取邮件信息并下载邮件的附件 前置功能 案例以QQ邮箱为例说明: 首先登录QQ邮箱将SMTP服务开启,会得到一个授权码. 创建一个Springb ...

  3. java发送消息_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  4. java读取qq邮箱_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  5. java给qq发消息_通过java给qq邮箱发送信息

    通过java程序给qq邮箱发送信息. 1.第一步:下载mail的jar包:javax.mail.jar 下载地址:https://javaee.github.io/javamail/#Latest_N ...

  6. java实现qq邮箱发送附件和图片

    生成授权码 1.进入设置账户里面,把第一个服务开启 2.点生成授权码,在代码中当成是密码 3.集成到springboot里面,引入依赖包 <dependency><groupId&g ...

  7. java通过qq邮箱发送_java实现发送QQ邮箱

    需下载mail.jar包 获取16位SMTP命令步骤 默认是关闭的 ,将他开启获取16位SMTP命令 点击进行验证获取16位SMTP命令 package com.zking.test; import ...

  8. Java使用QQ邮箱发送纯文本格式信息

    1.导包 <dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</a ...

  9. java发送qq邮箱验证_JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架)

    JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架) 本来想实现 QQ 登录,有域名一直没用过,还得备案,好麻烦,只能过几天再更新啦. 先把实现的发送邮箱验证码更能更新了. 老规矩,更多内容在注释 ...

  10. java实现通过QQ邮箱发送激活邮件 springBoot

    用户邮件激活 通过QQ邮箱发送激活邮件 soringBoot 本文主要介绍了使用java 调用邮箱发送邮件的功能 首先新建一个springboot项目 pom依赖如下 <parent>&l ...

最新文章

  1. 不愧是大佬用Python做一个游戏辅助脚本,完整编程思路分享!
  2. 他们翻遍用AI检测新冠的论文,一篇临床可用的也没有?!
  3. 嵩天-Python语言程序设计程序题--第二周:基本图形绘制
  4. 简而言之,JUnit:单元测试断言
  5. android_Text
  6. 小程序 foreach_【第2106期】小程序依赖分析实践
  7. 【软件体系结构】软件体系结构复杂性
  8. java读取文件夹,如何从Java读取文件夹中的所有文件?
  9. vue性能优化-------vendor优化详细用法(瘦身),减小体积,引入cdn
  10. css修改span位置_简历完善,CSS布局与定位,笔记
  11. 命令 结构_只需一个命令!从你的U盘里读出更多内容
  12. 一个成型的awt所必须的frame组件
  13. python可以做哪些有趣的事作文_那些有趣的事作文500字
  14. img 转esxi vmdk_KVM qcow2、raw、vmdk等镜像格式和转换
  15. python函数案例名片管理器_python实现名片管理器的示例代码
  16. 如何用IDEA打包jar包
  17. 小程序 | 微信小程序实现倒计时(节日校庆日等倒计时)
  18. EAS BOS:序时簿中获取选中行中某单元格的值方法
  19. ElasticSearch教程——proximity match 近似匹配
  20. F. Equalize the Array【学习进度条2】

热门文章

  1. 混凝土静力受压弹性模量试验计算公式_C50混凝土静力受压弹性模量试验报告
  2. Docker(2) Windows10安装教程(DockerToolbox)
  3. 《统计学》第八版贾俊平第四章总结及课后习题答案
  4. 微信小程序弹出框详解
  5. logit回归模型的参数估计过程_计量模型——面板向量自回归模型(PVAR模型)操作全过程...
  6. Sketch(一)——介绍、安装
  7. python 批量爬取网页pdf_批量抓取网页pdf文件
  8. 【Ubuntu录屏软件】SimpleScreenRecorder的安装与使用
  9. springboot 架构图
  10. 【嵌入式Linux应用开发】移植LVGL到Linux开发板