当前位置: 首页 > 面试题库 >

如何在一个会话中发送多封电子邮件?

韦高格
2023-03-14
问题内容

我想向不同的收件人发送数千封不同的电子邮件,并想打开与我的SMTP的连接并保留它。我希望这样可以更快,然后重新打开错误邮件的连接。我想为此使用Apache
Commons Email,但如有必要,可以使用Java Mail API。

现在,我正在执行此操作,每次打开一个都会关闭连接:

HtmlEmail email = new HtmlEmail();
email.setHostName(server.getHostName());
email.setSmtpPort(server.getPort());
email.setAuthenticator(new DefaultAuthenticator(server.getUsername(), server.getPassword()));
email.setTLS(true);
email.setFrom("test@example.com");
email.addTo(to);
email.setSubject(subject);
email.setHtmlMsg(htmlMsg);
email.send();

问题答案:

这是我的性能测试课程。使用一个连接发送邮件的速度快4倍,然后每次都重新打开连接(使用普通邮件时会发生这种情况)。使用多个线程可以进一步提高性能。

    Properties properties = System.getProperties();
    properties.put("mail.smtp.host", server);
    properties.put("mail.smtp.port", "" + port);

    Session session = Session.getInstance(properties);
    Transport transport = session.getTransport("smtp");

    transport.connect(server, username, password);

    for (int i = 0; i < count; i++) {

        Message message = new MimeMessage(session);
        message.setFrom(new InternetAddress(from));
        InternetAddress[] address = {new InternetAddress(to)};
        message.setRecipients(Message.RecipientType.TO, address);

        message.setSubject(subject + "JavaMail API");
        message.setSentDate(new Date());

        setHTMLContent(message);
        message.saveChanges();
        transport.sendMessage(message, address);

    }

    transport.close();


 类似资料:
  • 我正在使用Google表单将多条消息合并到一个每日电子邮件中,使用脚本和每日定时触发器发送(代码从这里复制,下面是我的版本)。 例如,一个电子邮件地址是abc@example.co.uk,他们收到了电子邮件,但在我的收件箱(xyz@example.co.uk)中是发送到abc@example.co.uk的电子邮件,但不是转发的消息或回复。 有什么办法阻止这一切吗?

  • 问题内容: 如何使用PHP每周向100,000个用户发送一封电子邮件? 重要的是,实际上应尽可能发送所有电子邮件。显然,按常规发送邮件只会产生问题。 是否有用于PHP的库使此过程更简单? 问题答案: 简短的答案: 虽然从技术上来讲,您每周可以自己发送10万封电子邮件,但是最简单,最简单,最便宜的解决方案是将其 外包 给专门从事 此 工作的公司之一(我 确实 说过“最便宜”:您尝试进行DIY时可以投

  • 我需要将我的表单发送给多个收件人,但我想不出需要编辑哪一行。请看下文。我很感激你的帮助。 我已经尝试添加更多的值到电子邮件,但我不能使它工作。 我需要将我的表单发送给多个收件人,但我想不出需要编辑哪一行。请看下文。我很感激你的帮助。 我已经尝试添加更多的值到电子邮件,但我不能使它工作。 null null

  • 我们的应用程序自动发送电子邮件,我需要这些电子邮件分组在线程,所以用户有他们的组织在他们的邮箱。这些邮件也可以有不同的主题。例如: 已创建问题93 问题93描述已更改 问题93受理人已更改 null 在不同的科目中,这实际上是可能的吗?我需要使用不同的策略吗? 谢谢

  • 问题内容: 我最近开始编程我的第一个node.js。但是,我发现我无法创建直接发送到我的电子邮件的“联系我”表单,因为我无法从能够发送电子邮件的节点中找到任何模块。 有人知道node.js电子邮件库或示例联系表单脚本吗? 问题答案: node-email-templates是一个更好的选择:https : //github.com/niftylettuce/node-email- template

  • 我在发送带有多个附件的电子邮件时遇到问题。代码如下: 我收到邮件,但找不到任何附件。有人知道会出什么问题吗? 下面是我在Mail中得到的电子邮件正文: