gpt4 book ai didi

java - 我想使用 java 发送邮件而不延迟

转载 作者:行者123 更新时间:2023-11-29 03:43:48 27 4
gpt4 key购买 nike

我正在使用 javaMail API 发送邮件我的代码工作正常但问题是在发送邮件时发送邮件需要时间(延迟时间将近 15 到 20 秒),这就是我的应用程序运行的原因down.我想在发送邮件时不花时间发送邮件。请给个主意

这是我的代码:

public class sendMail {

public static void main(String[] args) {
Properties props = new Properties();
props=System.getProperties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "587");

String mail="XYZ@gmail.com";


Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("abc@gmail.com","********");
}
});

try {
String emails="xyz@gmail.com"+","+"xyz.kannoju@vxyz.com";
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("xyz.rajender@gmail.com"));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(emails));
message.setSubject("Testing Subject");
message.setText("Dear Rejender," +
"\n\n Please find the like!");

//Transport.send(message);
Transport tr=session.getTransport("smtp");
//tr.sendMessage(message, message.getRecipients(message.));
tr.send(message);
tr.close();
//Transport

System.out.println("Done");

} catch (MessagingException e) {
throw new RuntimeException(e);
}
}

最佳答案

你可以在它自己的线程中运行花费太多时间的方法,让你的主程序继续做其他事情:

new Thread(new Runnable() {
public void run() {
tr.send(message);
tr.close();
}
}).start();

ps: trmessage 需要final 并且需要在run 方法中添加一些错误处理。

关于java - 我想使用 java 发送邮件而不延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11932121/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com