使用javax.mail自动发送邮件

  • 其中,toMail 为发送的邮箱列表,如{“aaa@aaa.com”, "bbb@bbb.com"}
  • 需要优化的部分:邮件的内容还是比较囧的,后期准备找个邮件模板优化下
public class SendMail {
    public static void email(String[] toMail, String content) throws MessagingException {
        // 配置发送邮件的环境属性 
       final Properties props = new Properties(); 
       // 表示SMTP发送邮件,需要进行身份验证
        props.put("mail.smtp.auth", "true"); 
       props.put("mail.smtp.host", "smtp.qq.com");        // 发件人的账号
       props.put("mail.user", "XXX@XXXX);                      // 访问SMTP服务时需要提供的密码          
       props.put("mail.password", "XXXXXX");        // 构建授权信息,用于进行SMTP进行身份验证        

        Authenticator authenticator = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // 用户名、密码
                String userName = props.getProperty("mail.user");
                String password = props.getProperty("mail.password");
                return new PasswordAuthentication(userName, password);
            } 
       };       
             // 使用环境属性和授权信息,创建邮件会话
            Session mailSession = Session.getInstance(props, authenticator); 
             // 创建邮件消息
            MimeMessage message = new MimeMessage(mailSession); 
             // 设置发件人
            InternetAddress form = new InternetAddress( 
            props.getProperty("mail.user"));
            message.setFrom(form);        // 设置收件人
            InternetAddress[] to = new InternetAddress[toMail.length];
             for(int i=0; i<toMail.length; i++) {
            System.out.println("发送邮件列表:" + toMail[i]);
            to[i] = new InternetAddress(toMail[i]);
        } 
       message.setRecipients(Message.RecipientType.TO, to);
        // 设置邮件标题 
       message.setSubject("本邮件由程序自动下发的,请勿回复!-- 失败接口列表");
        // 设置邮件的内容体
           Date date = new Date(); 
           message.setContent("接口测试脚本完成时间:" +date.toString() + "    " +  "失败接口:" + content + "     ", "text/html;charset=UTF-8");  
      // 发送邮件
        Transport.send(message);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • django通过封装python的smtplib实现发送邮件功能。django 1.11官网翻译内容见:http:...
    学以致用123阅读 4,041评论 0 4
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,446评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,969评论 19 139
  • 本文包括:1、名词解释2、邮件收发过程3、JavaMail 知识概要4、发送一封符合 MIME 协议的 JavaM...
    廖少少阅读 4,085评论 2 13
  • 西园晚霁浮嫩凉,开尊漫摘葡萄尝。满架高撑紫络索,一枝斜嚲金锒铛。 雷长虹,陕西西安市人。陕西省美术家协会会员;咸阳...
    梦海蓉阅读 825评论 4 2