1

メールを送る:

public class SendMail {

public void sendEmail(final String from, final String password,String toAddress) {
    Properties props = new Properties();
    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", "465");
    Session session = Session.getDefaultInstance(props,
            new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(from,password);
                }
            });
    try
    {
        Message message = new MimeMessage(session);
        message.setFrom(new InternetAddress(from));
        message.setRecipients(Message.RecipientType.TO,
                InternetAddress.parse(toAddress));
        message.setSentDate(new Date());
        message.setSubject("Account Activation for T20home");
        message.setContent("Hello", "text/html");
        Transport transport = session.getTransport("smtp");
        transport.connect("smtp.gmail.com", from, password);
        transport.sendMessage(message, message.getAllRecipients());
        transport.close();
    }
    catch(MessagingException mex)
    {

    }
}
}

次のようなメールを送信できます。

SendMail send = new SendMail()
send.sendEmail("mailFrom1@gmail.com", "pass1","to1")

SendMail send1 = new SendMail()
send1.sendEmail("mailFrom2@gmail.com", "pass2","to1")

うまくいきますが、mailFrom1@gmail.com からメール「to1」に 2 通の手紙が届きます。

「mailFrom1@gmail.com」から1文字、「mailFrom2@gmail.com」から1文字

setFromが機能しない

4

1 に答える 1

0

JavaMail の FAQ (カットアンドペースト プログラミングの危険性) で説明されているいくつかのよくある間違いを犯しました。それらを修正すると、別の問題が発生すると思われますが、見てみましょう...

于 2012-10-07T17:25:57.593 に答える