0

这是使用 Gmail 发送电子邮件的示例函数

    public void sendEmail(String from, ArrayList<String> to, String subject,
        String content, boolean contentIsHtml) throws EmailException 
{
    try
    {
        Properties props = new Properties();

        props.put("mail.transport.protocol", EmailConfig.getGmailTransportProtocol());
        props.put("mail.smtp.host", EmailConfig.getGmailSMTPHost());
        props.put("mail.smtp.socketFactory.port", EmailConfig.getGmailSMTPPort());
        props.put("mail.smtp.socketFactory.class", EmailConfig.getSocketFactoryClass());
        props.put("mail.smtp.auth", EmailConfig.getGmailAuthRequired());
        props.put("mail.smtp.port", EmailConfig.getGmailSMTPPort());


        SMTPAuthenticator authenticator = new SMTPAuthenticator();

        Session session = Session.getDefaultInstance(props, authenticator);
        //session.setDebug(true);

        Transport transport = session.getTransport();

        MimeMessage message = new MimeMessage(session);
        message.setSubject(subject);
                    message.setSender(EmailUtil.getInternetAddress(
                    EmailConfig.getGmailUsername(), "jatin Shah"));
        message.setRecipients(
                        RecipientType.TO,  
                       EmailUtil.getInternetAddresses(to));
        if(contentIsHtml)
            message.setContent(content, "text/html");
        else
            message.setContent(content, "text/plain");

        transport.connect();
        transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
        transport.close();

        System.out.println("Email Sent!!");

    }
    catch(Exception e)
    {
        e.printStackTrace();
        throw new EmailException(e);
    }
}

这将使用 MyGmail 帐户发送电子邮件

我在测试中从 gmail 帐户向另一个帐户发送电子邮件

但是,当我收到一封电子邮件时,这很好......但是,现在显示了发件人的全名

而不是“Jatin Shah”(我的名字)......它显示的是 bhatin.shah(我的用户名)

4

1 回答 1

1

首先,阅读常见错误的常见问题解答条目

要解决您的问题,请使用 setFrom 而不是 setSender。

于 2012-06-12T18:41:09.060 回答