本站首页    管理页面    写新日志    退出


«September 2025»
123456
78910111213
14151617181920
21222324252627
282930


公告

戒除浮躁,读好书,交益友


我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:邢红瑞的blog
日志总数:523
评论数量:1142
留言数量:0
访问次数:9705231
建立时间:2004年12月20日




[java语言]javamail发送带有附件的html邮件
原创空间,  软件技术

邢红瑞 发表于 2005/10/4 20:21:42

package org.tatan.mail; import javax.mail.Session;import javax.mail.MessagingException;import javax.mail.Multipart;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMultipart;import javax.activation.FileDataSource;import javax.activation.DataHandler; public class SendAttachMail {    public static void sendMessage(String smtpHost,                                   String from, String to,                                   String subject, String messageText,                                   String fileName)            throws MessagingException {         // Step 1:  Configure the mail session        java.util.Properties props = new java.util.Properties();        props.setProperty("mail.smtp.auth", "true");//指定是否需要SMTP验证        props.setProperty("mail.smtp.host", smtpHost);//指定SMTP服务器        props.put("mail.transport.protocol", "smtp");        Session mailSession = Session.getDefaultInstance(props);        mailSession.setDebug(true);//是否在控制台显示debug信息         // Step 2:  Construct the message        System.out.println("Constructing message -  from=" + from + "  to=" + to);        InternetAddress fromAddress = new InternetAddress(from);        InternetAddress toAddress = new InternetAddress(to);         MimeMessage testMessage = new MimeMessage(mailSession);        testMessage.setFrom(fromAddress);        testMessage.addRecipient(javax.mail.Message.RecipientType.TO, toAddress);        testMessage.setSentDate(new java.util.Date());        testMessage.setSubject(subject);         //  Step 3:  Create a body part to hold the "text" portion of the message        System.out.println("Constructing 'text' body part");        MimeBodyPart textBodyPart = new MimeBodyPart();        textBodyPart.setContent(messageText,"text/html;charset=gb2312");         //  Step 4:  Create a body part to hold the "file" portion of the message        System.out.println("Attaching 'file' body part: " + fileName);        MimeBodyPart fileBodyPart = new MimeBodyPart();        FileDataSource fds = new FileDataSource("c:\\a.rar");        fileBodyPart.setDataHandler(new DataHandler(fds));        fileBodyPart.setFileName(fds.getName());        System.out.println("Finished attaching file");         // Step 5:  Create a Multipart/container and add the parts        Multipart container = new MimeMultipart();        container.addBodyPart(textBodyPart);        container.addBodyPart(fileBodyPart);         // Step 6:  Add the Multipart to the actual message        testMessage.setContent(container);        System.out.println("Message constructed");         // Step 7:  Now send the message        Transport transport = mailSession.getTransport("smtp");        transport.connect(smtpHost, "webmaster", "password");        transport.sendMessage(testMessage, testMessage.getAllRecipients());        transport.close();         System.out.println("Message sent!");    }     public static void main(String[] args) {         String fileName = "a.rar";        String smtpHost = "localhost";        String from = "webmaster@mymail.com";        String to = "mfc42d@sohu.com";        String subject = "html邮件附件测试"; //subject javamail自动转码         StringBuffer theMessage = new StringBuffer();        theMessage.append("<h2><font color=red>这倒霉孩子</font></h2>");        theMessage.append("<hr>");        theMessage.append("<i>年年失望年年望</i>");         try {            SendAttachMail.sendMessage(smtpHost, from, to, subject, theMessage.toString(), fileName);        }        catch (javax.mail.MessagingException exc) {            exc.printStackTrace();        }    }}


阅读全文(3929) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.315 second(s), page refreshed 144771957 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号