| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 657 人关注过本帖
标题:DoneJava邮件自动发送程序调试
只看楼主 加入收藏
zzxwill
Rank: 1
等 级:新手上路
帖 子:398
专家分:0
注 册:2007-8-15
收藏
 问题点数:0 回复次数:0 
DoneJava邮件自动发送程序调试
有人能将这个Java邮件自动发送程序调试好,或者能给我提供一个Java邮件自动发送程序(能发送图片附件)。
package comunicate;
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:\\1.txt");
         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 = "1.txt";
         String smtpHost = "localhost";
         String from = "zzxwill@
         //String to = "hehe@
       String to = "zzxwill@
         String subject = "html邮件附件测试";
         //subject javamail自动转码
          StringBuffer theMessage = new StringBuffer();
         theMessage.append("<h2><font color=red>World is not beautiful~~</font></h2>");
         theMessage.append("<hr>");
         theMessage.append("<i>Therefore it is~~</i>");

         try {
             SendAttachMail.sendMessage(smtpHost, from, to, subject, theMessage.toString(), fileName);
         }
         catch (javax.mail.MessagingException exc) {
             exc.printStackTrace();
         }
     }
}

[[it] 本帖最后由 zzxwill 于 2008-6-7 13:28 编辑 [/it]]
搜索更多相关主题的帖子: Java 邮件 调试 自动 
2008-03-14 03:56
快速回复:DoneJava邮件自动发送程序调试
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029132 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved