日期:2014-05-20  浏览次数:20666 次

javamail的问题!
我通过javamail发送一封   邮件,   其中我想把邮件的发件人地址设置成自己定义的别名,大虾们怎么设置,
如果是   String   from= "别名 <xiaoniaoxiangfei@csdn.net> "   这样设置为什么会出现乱码?应该怎么样解决?

------解决方案--------------------
mail = new javax.mail.internet.MimeMessage(.......

mail.setFrom(new InternetAddress( "xxx@163.com "))

------解决方案--------------------
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN ">
<%@ page contentType= "text/html;charset=gb2312 " %>
<%@ page import= "java.io.* "%>
<%@ page import= "java.util.* "%>
<%@ page import= "java.sql.* "%>
<%@ page import= "javax.servlet.* "%>
<%@ page import= "javax.servlet.http.* "%>
<%@ page import= "javax.mail.*, javax.mail.internet.*, javax.activation.*, "%>

<%@ page import= "java.net.* "%>
<%@ page import= "java.util.*, java.text.* " %>
<%@ page session= "true "%>
<%

Properties props = new Properties();
Session sendMailSession;
Transport transport;
sendMailSession = Session.getInstance(props, null);
props.put( "mail.smtp.host ", "smtp.sina.com.cn "); // "202.106.187.180 " 是“smtp.sina.com.cn”的IP!
props.put( "mail.smtp.auth ", "true "); //允许smtp校验

transport = sendMailSession.getTransport( "smtp ");
transport.connect( "smtp.sina.com.cn ", "你的用户名 ", "你的密码 "); //你在sina的用户名,密码...........
Message newMessage = new MimeMessage(sendMailSession);

//设置mail主题
String mail_subject= "图书过期通知 ";
newMessage.setSubject(mail_subject);


//设置发信人地址
String strFrom= "管理员 "; // <--------------
strFrom=new String(strFrom.getBytes(), "8859_1 ");
newMessage.setFrom(new InternetAddress(strFrom));
//设置收件人地址
newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress( "sheny@bt-t.com "));

//设置mail正文
newMessage.setSentDate(new java.util.Date());
String mail_text= "尊敬的读者,您好!\r\n "+
"\r\n "+
" 您在本馆所借的书《123》应该于 归还,现在已经过期,请尽快将图书归还!\r\n "+
"\r\n "+
" 管理员\r\n ";
newMessage.setText(mail_text);

newMessage.saveChanges(); //保存发送信息
transport.sendMessage(newMessage,newMessage.getRecipients(Message.RecipientType.TO)); //发送邮件

transport.close();
%>