• 纯文本邮件发送:java


    1.打开jdk的conf下的security文件的.security,找到并删除,权限问题建议复制文件修改后替换

    jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
        DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL

    删除后的内容

    然后导入jar包:两个

    授权码:邮箱-设置-账户,下滑自行获取

    代码:

    1. import com.sun.mail.util.MailSSLSocketFactory;
    2. import javax.mail.*;
    3. import javax.mail.internet.InternetAddress;
    4. import javax.mail.internet.MimeMessage;
    5. import java.security.GeneralSecurityException;
    6. import java.util.Properties;
    7. public class MailDemo01 {
    8. public static void main(String[] args) throws GeneralSecurityException, MessagingException {
    9. Properties prop=new Properties();
    10. prop.setProperty("mail.host","smtp.qq.com");//设置qq邮件服务器
    11. prop.setProperty("mail.transport.protocol","smtp");//邮件发送协议
    12. prop.setProperty("mail.smtp.auth","true");//验证用户账号密码
    13. //要设置ssl加密,固定代码,针对大厂
    14. MailSSLSocketFactory sf=new MailSSLSocketFactory();
    15. sf.setTrustAllHosts(true);
    16. prop.put("mail.smtp.ssl.enable","true");
    17. prop.put("mail.smtp.ssl.socketFactory",sf);
    18. //发送邮件,五个步骤
    19. //1.创建定义整个应用程序所需的环境信息的 session 对象
    20. //qq才有
    21. Session session=Session.getDefaultInstance(prop, new Authenticator() {
    22. @Override
    23. protected PasswordAuthentication getPasswordAuthentication() {
    24. return new PasswordAuthentication("@qq.com","授权码");
    25. }
    26. });
    27. //开启session的debug,查看邮件发送的运行状态
    28. session.setDebug(true);
    29. //2.通过session得到transport
    30. Transport ts=session.getTransport();
    31. //3.使用邮箱的用户名和授权码连接服务器 ?
    32. ts.connect("smtp.qq.com","@qq.com","授权码");
    33. //4.写邮件
    34. MimeMessage message=new MimeMessage(session);
    35. //指明发件人
    36. message.setFrom(new InternetAddress("@qq.com"));
    37. //收件人
    38. message.setRecipient(Message.RecipientType.TO,new InternetAddress("@qq.com"));
    39. //邮件标题
    40. message.setSubject("纯文本邮件");
    41. //邮件内容
    42. message.setContent("

      你好啊!

      ","text/html;charset=UTF-8");

    43. //5.发送邮件
    44. ts.sendMessage(message,message.getAllRecipients());
    45. //6.关闭连接
    46. ts.close();
    47. }
    48. }

  • 相关阅读:
    Unity-Input System新输入系统插件学习
    为什么红黑树比AVL树效率高?
    大厂面试官眼中的好简历到底长啥样
    Hive基本查询语句
    配置Nginx服务器用于Web应用代理和SSL{仅配置文件}
    springboot+校园招聘管理 毕业设计-附源码161815
    Jenkins与DevOps持续交付详解
    Redis的发布订阅在SpringMVC(或xml配置)项目中使用(注意版本兼容问题)
    IDEA 实用快捷键
    chromium的下载和编译(流程详解)
  • 原文地址:https://blog.csdn.net/2201_75903640/article/details/133677537