今天在使用javamail发送邮件到qq邮箱的过程中,遇到了一些问题

刚开始按网上的代码写

// 发送纯文本信息
Properties prop = new Properties();
prop.setProperty("mail.smtp.host", "smtp.qq.com");    // 注意,企业邮箱地址不同
prop.setProperty("mail.transport.protocol", "smtp");
prop.put("mail.smtp.auth", true);    // 此处的true不要使用字符串形式的"true", 被坑过.....
prop.setProperty("mail.smtp.port", "465");Session session = Session.getDefaultInstance(prop, new Authenticator() {@Overrideprotected PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication("xxx@qq.com", "xxxxx");}
});
session.setDebug(true);    // 打印调试信息MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject("xx");
message.setText("xxx");Transport.send(message);

上面的代码在运行的时候是连不上qq邮箱的服务器的,因为qq邮箱采用了ssl协议, 所以上面得加上一行

prop.put("mail.smtp.ssl.enable", "true");   // 启用ssl

在jdk8运行时, 会出现如下异常:

javax.mail.MessagingException: Could not connect to SMTP host: smtp.qq.com, port: 465;nested exception is:javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure......
Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

经过查找,该问题出现是因为jdk8里面的安全机制的问题,具体见 jdk_jce,

要替换的资源下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

覆盖之前记得备份jdk里的原文件

javamail maven 地址: http://mvnrepository.com/artifact/javax.mail/mail

JavaMail发送邮件到qq邮箱的过程中遇到的问题及解决办法相关推荐

  1. ac ap方案 华为_今天给大家总结下AC+AP架构使用过程中的若干问题及解决办法

    原标题:今天给大家总结下AC+AP架构使用过程中的若干问题及解决办法 早前发布了一篇<手把手教您如何大范围无线组网>,当时有朋友留言要我给点更详细的配置,有朋友建议用华为设备,也有朋友建议 ...

  2. Python 爬虫中国知网论文过程中遇到的坑及解决办法

    假期,老师给布置了 Python 爬虫中国知网论文的任务,目前实现了登录和搜索功能,先写一下遇到的坑和解决办法吧. Python 爬虫中国知网论文过程中遇到的坑及解决办法 一. selenium 模块 ...

  3. javamail发送邮件到qq邮箱图片不能显示问题

    使用javamail发送带图片的邮件时会出现以下情况 大部分解答都是设置图片格式,或显示方式等方法,如以下 但是即使这样设置之后也并不能正确显示.其实出现这个问题的原因应该是腾讯的QQ邮箱的安全机制, ...

  4. caffe使用过程中遇到的问题和解决办法

    cuda_success error 问题描述 在参考http://www.cnblogs.com/denny402/p/5083300.html自己尝试预处理和训练数据的时候,出现了error == ...

  5. 编译apache过程中出现如下错误及解决办法

    在编译apache的过程中出现如下错误: no SSL-C headers found configure: error: ...No recognized SSL/TLS toolkit detec ...

  6. Cordova安装与配置过程中出现的问题及解决办法

    最近在学习jQuery Mobile,在配置环境的过程中,遇到了一些问题,看百度这方面的资料挺少的,就自己总结一下了 1,在安装Cordova CLI过程中,提示出错,基本上是网速的问题,多安装几遍就 ...

  7. python实验过程中遇到的问题以及解决办法_20183413 2029-2020-2《Python程序设计》实验一报告...

    20183413 2019-2020-2 <Python程序设计>实验一报告 课程:<Python程序设计> 班级: 1834 姓名:李杰 学号: 20183413 实验教师: ...

  8. Git 使用过程中遇到的问题以及解决办法

    git 是项目当中最常用的代码管理库,熟练的使用git不是万能的,但不能熟练的使用git是万万不能的,归纳了一下真正开始在多人协作的代码库中提交自己的代码时遇到的问题. git fetch 失效的问题 ...

  9. ansys在求解过程中死机关机的解决办法

    ansys是一款功能强大的仿真软件.它用于分析工程领域的结构分析和流体动力学.在使用ansys软件时,必须面对许多复杂的问题,并且计算机会崩溃关机.这导致工作人员的时间浪费以及效率低下. ansys关 ...

最新文章

  1. cnzz统计代码引起的Bad Request - Request Too Long
  2. android ,动态布局 butterknife,与Butterknife绑定在android中动态添加视图
  3. 前端技术以及工程化工具
  4. 【开源项目】基于FFmpeg的PCM数据编码为AAC
  5. .NET 4.0 调用 C dll 触发 AccessViolationException 异常的处理方案
  6. 如何计算MySQL数据库占用内存
  7. ios block常见的错误(二)——循环引用
  8. mysql 递归查询子类_MySQL递归查询当前节点及子节点
  9. druid-1.0.9 jar包 下载
  10. 2022年阿里云服务器租用价格表(最新收费标准及活动价格表)
  11. 新一轮勒索病毒变种全球肆虐 中国已遭攻击
  12. android hid 鼠标,使用BluetoothHidDevice将安卓手机同时模拟成鼠标和键盘
  13. 使用麦克风和Arduino测量以dB为单位的声音/噪声水平
  14. 灰度共生矩阵原理+Matlab中实现
  15. CMakeLists.txt 构建 Qt工程
  16. 【OFDM】多径信道下OFDM通信系统误码率仿真附matlab代码
  17. 基于PyQt5实现查看本地图片功能
  18. CAD单独卸载,不影响其他软件,CAD专用卸载修复工具,一键完全彻底卸载删除CAD软件的专用卸载工具
  19. 万字心得,PMP学习考试那些事儿,看这篇文章就够了
  20. css设置MP4背景图片

热门文章

  1. Python批量操作文件写入数据库及从数据库取数据!
  2. 当你用opnet(riverbed)跑程序时候,出现fatal error c1189: #error:No Target Architecture该怎么处理?
  3. 通向自由的钥匙(key)hgoi0407
  4. HttpMediaTypeNotSupportedException: Content type ‘application.yml/json;charset=UTF-8‘ not supported
  5. 负采样Negative Sampling
  6. HTTP协议、URI和URL、报文首部
  7. Flutter文本输入框TextField属性(InputDecoration、textInputAction、inputFormatters等等)详解
  8. 工程建材企业必看:应用集中采购协同系统,实现降本增效,提升企业效益!
  9. FAST特征点检测的matlab实现
  10. 大一课设ktv点歌系统c语言