您的位置:首页 > 编程语言 > Java开发

JavaMail学习笔记-2(HTML格式的邮件发送)

2010-07-01 15:01 543 查看
发送HTML类型的电子邮件:
1.在前端输入页面要在上个的基础上加入对邮件类型的判断


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<html>


<head>


<title>JavaMail2.html</title>


</head>




<body>




<form action="SEND2" method="post">


From:<input type="text" name="from"><br>


TO:<input type="text" name="to"><br>


Subject:<input type="text" name="subject"><br>


type:<select name="type" size="1">


<option value="text/plain">Text</option>


<option value="text/html">Html</option>


</select><br>


Context:<textarea rows="3" cols="40" name="context"></textarea><br>


<input type="submit" value="send">


</form>


</body>


</html>



2.编写servlet : SEND2.java


package com.servlet;




import java.io.IOException;


import java.io.PrintWriter;


import java.util.Date;


import java.util.Properties;




import javax.mail.Message;


import javax.mail.Multipart;


import javax.mail.Session;


import javax.mail.Transport;


import javax.mail.internet.InternetAddress;


import javax.mail.internet.MimeBodyPart;


import javax.mail.internet.MimeMessage;


import javax.mail.internet.MimeMultipart;


import javax.servlet.ServletException;


import javax.servlet.http.HttpServlet;


import javax.servlet.http.HttpServletRequest;


import javax.servlet.http.HttpServletResponse;






public class SEND2 extends HttpServlet ...{






public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException ...{




response.setContentType("text/html");


PrintWriter out = response.getWriter();


request.setCharacterEncoding("gb2312");




String from = request.getParameter("from");


String to = request.getParameter("to");


String subject = request.getParameter("subject");


String context = request.getParameter("context");


String type=request.getParameter("type");




// 确定要发送的邮件服务器的地址


String mailserver = "codedestiny-pc";






try ...{


// 设置邮件的传输协议


Properties prop = System.getProperties();


prop.put("mail.smtp.host", mailserver);




// 建立邮件发送的连接


Session session = Session.getDefaultInstance(prop, null);




// 创建发送的信息的载体


Message msg = new MimeMessage(session);




// 设置相关的邮件属性


msg.setFrom(new InternetAddress(from));




// 点到点的发送


msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));






/**//*


* 群发 msg.setRecipients(Message.RecipientType.TO, new


* InternetAddress[]{new InternetAddress(to),new


* InternetAddress(to)}); //借助循环的标准发送


*/


msg.setSubject(subject);


msg.setSentDate(new Date());




//判断发送的Mime类型


Multipart mp = new MimeMultipart();


MimeBodyPart mbp = new MimeBodyPart();




//设置邮件发送数据的类型


mbp.setContent(context, type+";charset=GB18030");




//text/plain或text/html;charset=GB18030,将发送的数据进行封装


mp.addBodyPart(mbp);


msg.setContent(mp);




// 发送


Transport.send(msg);




} catch (Exception e) ...{


e.printStackTrace();


}




out.print("send ok");


out.flush();


out.close();


}






}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: