Glassfishサーバーで常時実行され、データベース内の特定の時刻を検索してその時刻にメールを送信するJavaMailAPIを使用してメールアプリケーションを作成する方法。データベースで指定された特定の時間にメールを送信する必要があるJSFで記述されたWebアプリケーションがあります。
質問する
4761 次
1 に答える
2
Gmailの場合は、以下のコードを使用してください
import org.apache.commons.mail.*;
public class GmailEmailWorking {
public static void main(String[] args) {
String myEmailId = "xyz@gmail.com";
String myPassword = "password";
String senderId = "xyz@yahoo.com";
try {
MultiPartEmail email = new MultiPartEmail();
email.setSmtpPort(587);
email.setAuthenticator(new DefaultAuthenticator(myEmailId, myPassword));
email.setDebug(true);
email.setHostName("smtp.gmail.com");
email.setFrom(myEmailId);
email.setSubject("Hi");
email.setMsg("This is a test mail ... :-)\n\nPlease check attachements that I have sent.\n\nThanks,\nFahim");
email.addTo(senderId);
email.setTLS(true);
EmailAttachment attachment = new EmailAttachment();
attachment.setPath("/Users/fahadparkar/Desktop/Fahim/tables.xlsx");
attachment.setDisposition(EmailAttachment.ATTACHMENT);
attachment.setDescription("Excel");
attachment.setName("tables.xlsx");
email.attach(attachment);
email.send();
System.out.println("Mail sent!");
} catch (Exception e) {
System.out.println("Exception :: " + e);
}
}
}
以下は、必要なjarファイルのリストです。
他のサーバーから送信するには、以下の行で変更を行う必要があります
email.setSmtpPort(587);
email.setHostName("smtp.gmail.com");
于 2012-07-12T16:32:30.573 に答える