首页
论坛
图书
开发资料
在线文档
网址
下载
联系我们
 新闻│Java│JavaScript│Eclipse│Eclipse 英文│J2EE│J2ME│J2SE│JSP│Netbeans│Hibernate│JBuilder│Spring│Struts
站内搜索: 请输入搜索关键词

当前页面: 开发资料首页 → Java 专题 → 发送带附件的邮件

发送带附件的邮件

摘要: 发送带附件的邮件

</td> </tr> <tr> <td height="35" valign="top" class="ArticleTeitle"> 继续以新浪为例,发附件要用到上传的组件,O'Reilly公司的cos.jar。请将cos.jar、mail.jar和activation.jar,放到你的WEB应用程序的WEB-INF/lib目录下。
测试用的JavaMail3.html

<head>
JavaMail3.html

</head>
<body>

利用JavaMail来发送电子邮件 - 附件


<form name="SendMessage" Method="post" action="JavaMail3.jsp" enctype="multipart/form-data">

寄信人:<input type="text" name="From" size="30" maxlength="30">


收信人:<input type="text" name="To" size="30" maxlength="30">


主题:<input type="text" name="Subject" size="30" maxlength="30">


格式:<select name="Type" size="1">
<option value="text/plain">Text</option>
<option value="text/html">HTML</option>
</select>


附件:<input type="file" name="FileName" size="20" maxlength="20">


内容:

<textarea name="Message" cols=40 rows=5></textarea>



<table width="669" border="0"> <tr> <td width="391"><input type="submit" value="发送">
<input type="reset" value="重填">
</form>

</body>

处理附件与邮件的JavaMail3.jsp
<%@ page import="javax.mail.*" %>
<%@ page import="javax.mail.internet.*" %>
<%@ page import="javax.activation.*" %>
<%@ page import="java.util.*,java.io.*" %>
<%@ page import="com.oreilly.servlet.MultipartRequest" %>
<%@ page contentType="text/html;charset=GB2312" %>


<head>
CH17 - JavaMail2.jsp
</head>
<body>
</td> <td width="268"> </td> </tr> </table>

利用JavaMail来发送电子邮件 - 附件



<%
InternetAddress[] address = null;

request.setCharacterEncoding("gb2312");
MultipartRequest multi = new MultipartRequest(request , "." , 5*1024*1024 , "GB2312");

String mailserver = "smtp.sina.com.cn";
String From = multi.getParameter("From");
String to = multi.getParameter("To");
String Subject = multi.getParameter("Subject");
String type = multi.getParameter("Type");
String messageText = multi.getParameter("Message");
String FileName = multi.getFilesystemName("FileName");

boolean sessionDebug = false;

try {

// 设定所要用的Mail 服务器和所使用的传输协议
java.util.Properties props = System.getProperties();

props.put("mail.host",mailserver);
props.put("mail.transport.protocol","smtp");
props.put("mail.smtp.auth", "true");//指定是否需要SMTP验证

// 产生新的Session 服务
javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props,null);
mailSession.setDebug(sessionDebug);
Message msg = new MimeMessage(mailSession);
// 设定发信人
msg.setFrom(new InternetAddress(From));
// 设定收信人
address = InternetAddress.parse(to,false);
msg.setRecipients(Message.RecipientType.TO, address);
// 设定信中的主题
msg.setSubject(Subject);
// 设定送信的时间
msg.setSentDate(new Date());

if (FileName != null)
{
File file = new File(FileName);

// 如果有附件,先将邮件内容部分存起来
MimeBodyPart mbp1 = new MimeBodyPart();

// 设定邮件内容的类型为 text/plain 或 text/html
mbp1.setContent(messageText, type + ";charset=GB2312");

// 再来对附件作处理
MimeBodyPart mbp2 = new MimeBodyPart();
FileDataSource fds = new FileDataSource(FileName);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(MimeUtility.encodeText(fds.getName(), "GB2312", "B"));

// 最后再将两者整合起来,当作一份邮件送出
Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp1);
mp.addBodyPart(mbp2);
msg.setContent(mp);
}
else
{
// 若没有附件时,就直接存邮件内容
msg.setContent(messageText,type + ";charset=GB2312");
}
Transport transport = mailSession.getTransport("smtp");
//请填入你邮箱的用户名和密码,千万别用我的^_^。
transport.connect(mailserver, "zz3zcwb", "1234567");
transport.sendMessage(msg, msg.getAllRecipients());
transport.close();
out.println("邮件已顺利发送");

}
catch (MessagingException mex)
{
out.println(mex);
mex.printStackTrace();
}
%>
</body>

发个附件给我吧!
function TempSave(ElementID) { CommentsPersistDiv.setAttribute("CommentContent",document.getElementById(ElementID).value); CommentsPersistDiv.save("CommentXMLStore"); } function Restore(ElementID) { CommentsPersistDiv.load("CommentXMLStore"); document.getElementById(ElementID).value=CommentsPersistDiv.getAttribute("CommentContent"); } </td> </tr> <tr>


↑返回目录
前一篇: 一个向数据库存取image文件的jsp程序
后一篇: 发送html格式的邮件

首页 | 全站 Sitemap | 联系我们 | 设为首页 | 收藏本站
版权所有 Copyright © 2006-2007, Java 编程资料牛鼻站, All rights reserved