hkbmwcn

          javax mail 發送郵件及附件

          MailSender.java

          import java.util.ArrayList;
          import java.util.Iterator;
          import java.util.Properties;

          import javax.activation.DataHandler;
          import javax.activation.DataSource;
          import javax.activation.FileDataSource;
          import javax.mail.MessagingException;
          import javax.mail.Session;
          import javax.mail.Transport;
          import javax.mail.internet.AddressException;
          import javax.mail.internet.InternetAddress;
          import javax.mail.internet.MimeBodyPart;
          import javax.mail.internet.MimeMessage;
          import javax.mail.internet.MimeMultipart;

          import org.apache.log4j.Logger;

          public class MailSender {
           public static Logger logger = Logger.getLogger(MailSender.class);
           public static boolean send(Mail mail) throws Exception {
            try {
             Properties props = new Properties();
             props.put("mail.smtp.host", "localhost");
             Session session = Session.getDefaultInstance(props, null);
             MimeMessage mimemessage = new MimeMessage(session);
             mimemessage.setFrom(new InternetAddress(mail.getFrom()));
             mimemessage.setSentDate(mail.getDate());
             // set SUBJECT
             mimemessage.setSubject(mail.getSubject());

             // set TO address
             String mailto = mail.getTo();
             String ccmailid = mail.getCcusers();
             String strResult = "";
             try {
              mimemessage.setRecipients(javax.mail.Message.RecipientType.TO,
                mailto);
             } catch (Exception exception1) {
              throw exception1;
             }

             // set message BODY
             MimeBodyPart mimebodypart = new MimeBodyPart();
             mimebodypart.setText(mail.getContent());

             // attach message BODY
             MimeMultipart mimemultipart = new MimeMultipart();
             mimemultipart.addBodyPart(mimebodypart);

             // attach FILE
             ArrayList attachedFileList = mail.getAttachedFileList();
             if (attachedFileList != null) {
              DataSource ds = null;;
              for (Iterator e = attachedFileList.iterator(); e.hasNext();) {
               ds = (DataSource) e.next();
               mimebodypart = new MimeBodyPart();
               try {
                mimebodypart.setDataHandler(new DataHandler(
                  ds));
               } catch (Exception exception3) {
                throw exception3;
               }
               mimebodypart.setFileName(ds.getName()); // set FILENAME
               mimemultipart.addBodyPart(mimebodypart);
              }
             }// end if
             mimemessage.setContent(mimemultipart);
             // set CC MAIL and SEND the mail
             if (!mailto.equals("")) {
              // set CC MAIL
              if (ccmailid != null && (!ccmailid.equals("")))
               mimemessage.setRecipients(
                 javax.mail.Message.RecipientType.CC, ccmailid);
              try {
               // send MAIL
               Transport.send(mimemessage);
               logger.info(mailto + " Sent Successfully..........");
              } catch (Exception exception4) {
               throw exception4;
              }
             } else {
              logger.info(mailto + " Mail operation Failed..........");
             }
            } catch (Exception e) {
             throw e;
            }
            return true;
           }

          }

          Mail.java
          import java.util.ArrayList;
          import java.util.Date;
          import java.util.StringTokenizer;

          public class Mail {
           
           private String from = null;
           private String to = null;
           private String subject = null;
           private String content = null;
           private String ccusers = null;
           private ArrayList attachedFileList = null;
           private Date date = null;

           public Mail() {
            // TODO Auto-generated constructor stub
           }

           public ArrayList getAttachedFileList() {
            return attachedFileList;
           }

           public void setAttachedFileList(ArrayList attachedFileList) {
            this.attachedFileList = attachedFileList;
           }

           


           public String getContent() {
            return content;
           }

           public void setContent(String content) {
            this.content = content;
           }

           public String getFrom() {
            return from;
           }

           public void setFrom(String from) {
            this.from = from;
           }

           public String getSubject() {
            return subject;
           }

           public void setSubject(String subject) {
            this.subject = subject;
           }

           public String getTo() {
            return to;
           }

           public void setTo(String to) {
            this.to = to;
           }

           public Date getDate() {
            return date;
           }

           public void setDate(Date date) {
            this.date = date;
           }

           public String getCcusers() {
            return ccusers;
           }

           public void setCcusers(String ccusers) {
            this.ccusers = ccusers;
           }

          }




          posted on 2008-01-18 21:50 亙古頑石 閱讀(2071) 評論(1)  編輯  收藏

          評論

          # re: javax mail 發送郵件及附件[未登錄] 2008-12-20 16:25 zz

          aaaaa  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 谢通门县| 鄂伦春自治旗| 蒙山县| 黄山市| 灵宝市| 蒙阴县| 武平县| 邯郸县| 齐河县| 金昌市| 阿拉善右旗| 天门市| 镇巴县| 滁州市| 宜丰县| 布拖县| 镇原县| 咸阳市| 和田县| 客服| 航空| 民勤县| 榆中县| 永德县| 汉源县| 沂水县| 金坛市| 海盐县| 兰西县| 庆阳市| 桃源县| 方城县| 油尖旺区| 班戈县| 昌乐县| 长阳| 邵武市| 措勤县| 甘孜| 常州市| 洪泽县|