zoukankan      html  css  js  c++  java
  • Java使用qq邮箱发邮件实现

    public class MailDemo1 {
          public static void main(String[] args) throws Exception{
            Properties prop = new Properties();
            prop.setProperty("mail.host","smtp.qq.com");//设置qq邮件服务器
            prop.setProperty("mail.transport.protocol","smtp");//邮件发送协议
            prop.setProperty("mail.smtp.auth","true");//需要验证用户名密码
    
            //关于QQ邮箱,还要设置SSL加密
            MailSSLSocketFactory sf = new MailSSLSocketFactory();
            sf.setTrustAllHosts(true);
            prop.put("mail.smtp.ssl.enable","true");
            prop.put("mail.smtp.ssl.socketFactory",sf);
    
    
            //使用JavaMail发送邮件的六个步骤
            //1.创建定义整个应用程序所需要的环境信息的Session对象
    
            //QQ独有
            Session session=Session.getDefaultInstance(prop, new Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("获取授权码的邮箱","授权码");
                }
            });
    
            //开启Session的Debug模式,可以看到程序发送Email的运行状态
            session.setDebug(true);
    
            //2.通过Session对象获取transport对象
            Transport ts = session.getTransport();
    
            //3.使用邮箱的用户名和授权码连上邮件服务器
            ts.connect("smtp.qq.com","获取授权码的邮箱","授权码");
    
            //4.创建邮件
            //创建邮件对象
            MimeMessage message = new MimeMessage(session);
            //指定邮件的发件人
            message.setFrom(new InternetAddress("379831039@qq.com"));
            //指明邮件的收件人
            message.setRecipient(Message.RecipientType.TO,new InternetAddress("379831039@qq.com"));
            //邮件的标题
            message.setSubject("Your Baby!!");
            //邮件的文本内容
            message.setContent("<h1 style='color:pink'>爱你呦</h1>","text/html;charset=UTF-8");
            //5.发送邮件
            ts.sendMessage(message,message.getAllRecipients());
    
            //6.关闭连接
            ts.close();
        }
    }
  • 相关阅读:
    C++11的enum class & enum struct和enum
    c++11 中成员变量初始化的顺序
    c++11 lambda
    Java-NIO
    .Net之路(十五)图解LoadRunner压力測试
    activiti入门3排他网关,并行网管,包括网关,事件网关
    [移动端]移动端上遇到的各种坑与相对解决方式
    《软件调试艺术》读后感四
    [C++设计模式] command 命令模式
    iOS学习笔记23-音效与音乐
  • 原文地址:https://www.cnblogs.com/qhqi/p/14162910.html
Copyright © 2011-2022 走看看