如何更改用Java回复的电子邮件地址

时间:2017-08-28 08:52:02

标签: java javamail

我有发送电子邮件的方法:

public static void sendMail(InternetAddress[] to, InternetAddress[] cc, InternetAddress[] bcc, String subject, String body, String priority, String type) throws MessagingException {
    String host = "127.0.0.1";

    Properties properties = System.getProperties();
    properties.setProperty("mail.smtp.host", host);

    Session session = Session.getInstance(properties);

    MimeMessage msg = new MimeMessage(session);
    msg.setSubject(subject);
    msg.addHeader("X-Priority", priority);
    msg.setFrom("noreply@mydomain.com");
    msg.addRecipients(Message.RecipientType.TO, to);

    if (cc != null) {
        msg.addRecipients(Message.RecipientType.CC, cc);
    }

    if (bcc != null) {
        msg.addRecipients(Message.RecipientType.BCC, bcc);
    }

    if (type == null) {
        msg.setText(body);
    } else {
        msg.setText(body, "utf-8", type);
    }

    Transport.send(msg);
}

我希望如果某个用户回复此类电子邮件,他的电子邮件将被重定向到其他电子邮件(例如support@mydomain.com)。

2 个答案:

答案 0 :(得分:2)

尝试 msg.setReplyTo(replyTo); 请注意,replyTo与发件人地址

不同

答案 1 :(得分:0)

通过设置属性mail.smtp.from或使用SMTPMessage.setEnvelopeFrom方法设置“信封来自”地址。