JSP与JavaMail之4(发送HTML格式邮件) 5.发送HTML格式的邮件
所谓HTML格式,就是超文本格式.你的邮件可以用HTML代码编写,发给对方后,对方收到的将是信息将是超文本,超文本比纯文本好看多了.下以面是在以前例子的基础上修改的程序:
<%@ page contentType='text/html;charset=GB2312' %> <%request.setCharacterEncoding('gb2312');%> <%@ page import='Java.util.*,javax.mail.*'%> <%@ page import='javax.mail.internet.*'%> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=gb2312'> <title>发送成功</title> </head>
<body> <% try{ String tto=request.getParameter('to'); String ttitle=request.getParameter('title'); String tcontent=request.getParameter('content'); Properties props=new Properties(); props.put('mail.smtp.host','127.0.0.1'); props.put('mail.smtp.auth','true'); Session s=Session.getInstance(props); s.setDebug(true);
MimeMessage message=new MimeMessage(s);
//给消息对象设置发件人/收件人/主题/发信时间 InternetAddress from=new InternetAddress('xxf@cafe.com'); message.setFrom(from); InternetAddress to=new InternetAddress(tto); message.setRecipient(Message.RecipientType.TO,to); message.setSubject(ttitle); message.setSentDate(new Date());
//给消息对象设置内容 BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象 mdp.setContent(tcontent,'text/html;charset=gb2312');//给BodyPart对象设置内容和格式/编码方式 Multipart mm=new MimeMultipart();//新建一个MimeMultipart对象用来存放BodyPart对 //象(事实上可以存放多个) mm.addBodyPart(mdp);//将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart) message.setContent(mm);//把mm作为消息对象的内容
message.saveChanges(); Transport transport=s.getTransport('smtp'); transport.connect('127.0.0.1','xxf','coffee'); transport.sendMessage(message,message.getAllRecipients()); transport.close(); %> <div align='center'> <p><font color='#FF6600'>发送成功!</font></p> <p><a href='recmail.jsp'>去看看我的信箱</a><br> <br> <a href='index.htm'>再发一封</a> </p> </div> <% }catch(MessagingException e){ out.println(e.toString()); } %> </body> </html>
注:撰写邮件的html文件仍然和前面(请参考jsp和Java Mail(三))那个一样,不需要作任何修改.
怎么样,这个程序是不是很简单呢?如果还有什么不懂的话,请在下面留言.下一次我们将要讲一讲怎样发送附件.
|