栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java使用JavaMail进行邮件的发送和读取

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java使用JavaMail进行邮件的发送和读取

参考文章
  1. 基于JavaMail的Java邮件发送:简单邮件发送

  2. 基于JavaMail的Java邮件发送:复杂邮件发送

  3. 用java读取邮箱邮件

补充说明
  1. iphone手机绑定qq邮箱及开启SMTP服务验证

    1. 在手机【设置】=> 邮件中添加账户

      报错:imap不支持密码鉴定

      1. 登录pc端的qq邮箱

      2. 进入【设置】=>【账户】=>【POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务】

      3. 开启【IMAP/SMTP服务】(如果原来是开启的,重新关闭在开启一下)

      4. 这个时候有一个密保手机验证

      5. 验证成功之后出现如下

      6. 这里保存密码之后需要把弹框关闭

    2. 然后重新回去手机设置中添加就可以了

    附:gmail邮箱的获取授权码,https://www.chenweiliang.com/cwl-27998.html

  2. qq邮箱的SMTP服务器

    QQ邮箱 POP3 和 SMTP 服务器地址设置如下:

    邮箱:qq.com

    POP3服务器(端口995):pop.qq.com

    SMTP服务器(端口465或587): smtp.qq.com

    附:常用邮箱的服务器(SMTP/POP3)地址和端口总结

  3. 报错:Couldn’t connect to host, port: smtp.gmail.com, 25; timeout -1

    示例中的代码开启的端口为465,用于qq邮箱,如果是其他的邮箱需要对应的修改一下

    如gmail为:587

    这里有一个大坑:就是我本地是使用465才成功的,使用587一直连接不上(再来一个参考意见,使用25也可以试试,不过我没连上)

  4. 在本地测试无任何问题,但是上传到阿里云服务器(Centos 7)上就报错

    报错:Couldn't connect to host, port: smtp.163.com, 25; timeout -1;

    原因:阿里云出于安全考虑默认禁用25端口导致发邮件失败

    解决:参考https://blog.csdn.net/qq_38680405/article/details/123919728

  5. 使用google邮箱的时候,更改端口之后还是连接不上

    1. 端口使用465,而不是587(被注释掉的一段代码)

    2. 额外增加一个属性设置(这个我并没有用到,不过看到有这么写的,作为参考)

      props.setProperty(“mail.smtp.socketFactory.auth”, “true”);

    final String smtpPort = "465";
    props.setProperty("mail.smtp.port", smtpPort);
    props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
    props.setProperty("mail.smtp.socketFactory.fallback", "false");
    props.setProperty("mail.smtp.socketFactory.auth", "true");
    props.setProperty("mail.smtp.socketFactory.port", smtpPort);
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/996487.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号