大家好,希望大家给我些意见!

一直以来我用javamail发邮件时,遇到一个辣手的问题,就是无法指定发件人邮箱, 我不想发件人地址被定死,以下是程序片段,希望大家指正。

try{

Properties props = new Properties();

Store store;

Transport transport;

props.put("mail.smtp.host", "smtp.21cn.com");

props.put("mail.smtp.auth","true");

PasswordAuthentication pop = popAuthenticator.performCheck("flyfoxer","12345");

Session sendMailSession=Session.getInstance(props,popAuthenticator);

Message newMessage = new MimeMessage(sendMailSession);

//newMessage.setFrom(new InternetAddress(request.getParameter("from")));

newMessage.setFrom(new InternetAddress("flyfoxer@21cn.com"));

//问题就在这里,我不能指定newMessage.setFrom中的发件人地址,我不想用flyfoxer@21cn.com,想用其它信箱。希望高手帮忙,谢谢

newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("flyfoxer@263.net"));

newMessage.setSubject(str.GBKToISO8859(subjectstr));

newMessage.setSentDate(new java.util.Date());

newMessage.setText(str.GBKToISO8859(text));

transport = sendMailSession.getTransport("smtp");

transport.send(newMessage);

}

catch(MessagingException m)

{

out.println(m.toString());

}

现在问题焦点就在如何指定newMessage.setFrom中发件人的地址,不想用指定的邮箱,想用其它任何邮箱做发邮件人信箱,或者匿名,不知可否?

希望帮帮我,一直困扰了我半年多啊

|

楼上的兄弟,这个很简单的,可以实现的,你只要在

newMessage.setFrom(new InternetAddress("flyfoxer@21cn.com",from));

注意from是变量,你可以从数据库里取出来,给我高分啊,这个问题我也遇到过,希望对你有帮助!

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐