【源代码】java邮件群发代码.doc_第1页
【源代码】java邮件群发代码.doc_第2页
【源代码】java邮件群发代码.doc_第3页
【源代码】java邮件群发代码.doc_第4页
【源代码】java邮件群发代码.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

import java.io.*;import java.util.*;import javax.mail.*;import ernet.*;public class Mailer /* javamail session对象. */protected Session session;/* 发信地址 */protected String from;/* 信的标题*/protected String subject;/* 存放字符串形式的收信地址 */protected ArrayList toList = new ArrayList();/* 抄送地址*/protected ArrayList ccList = new ArrayList();/* 暗送地址 */protected ArrayList bccList = new ArrayList();/* 信的文本内容*/protected String body;/* SMTP服务器地址*/protected String mailHost;/*是否在控制台打印信息*/protected boolean verbose=true;/* Get from */public String getFrom() return from;public void setFrom(String fm) from = fm;public String getSubject() return subject;public void setSubject(String subj) subject = subj;public ArrayList getToList() return toList;public void setToList(ArrayList to) toList = to;public void setToList(String s) toList = tokenize(s);public void addTo(String to) toList.add(to);public ArrayList getCcList() return ccList;public void setCcList(ArrayList cc) ccList = cc;public void setCcList(String s) ccList = tokenize(s);public void addCc(String cc) ccList.add(cc);public ArrayList getBccList() return bccList;public void setBccList(ArrayList bcc) bccList = bcc;public void setBccList(String s) bccList = tokenize(s);public void addBcc(String bcc) bccList.add(bcc);public String getBody() return body;public void setBody(String text) body = text;public boolean isVerbose() return verbose;public void setVerbose(boolean v) verbose = v;public boolean isComplete() if (from = null | from.length()=0) System.err.println(doSend: no FROM);return false;if (subject = null | subject.length()=0) System.err.println(doSend: no SUBJECT);return false;if (toList.size()=0) System.err.println(doSend: no recipients);return false;if (body = null | body.length()=0) System.err.println(doSend: no body);return false;if (mailHost = null | mailHost.length()=0) System.err.println(doSend: no server host);return false;return true;public void setServer(String s) mailHost = s;/* Send the message.*/public synchronized void doSend() throws MessagingException if (!isComplete()throw new IllegalArgumentException(doSend called before message was complete);Properties props = new Properties();props.put(mail.smtp.host, mailHost);props.put(mail.smtp.auth, true);/指定是否需要SMTP验证/ Create the Session objectif (session = null) session = Session.getDefaultInstance(props, null);if (verbose)session.setDebug(true); / Verbose!/ create a messagefinal Message mesg = new MimeMessage(session);InternetAddress addresses;/ TO Address listaddresses = new InternetAddresstoList.size();for (int i=0; iaddresses.length; i+)addressesi = new InternetAddress(String)toList.get(i);mesg.setRecipients(Message.RecipientType.TO, addresses);/ From Addressmesg.setFrom(new InternetAddress(from);/ CC Address listaddresses = new InternetAddressccList.size();for (int i=0; iaddresses.length; i+)addressesi = new InternetAddress(String)ccList.get(i);mesg.setRecipients(Message.RecipientType.CC, addresses);/ BCC Address listaddresses = new InternetAddressbccList.size();for (int i=0; iaddresses.length; i+)addressesi = new InternetAddress(String)bccList.get(i);mesg.setRecipients(Message.RecipientType.BCC, addresses);/ The Subjectmesg.setSubject(subject);/ Now the message body.mesg.setText(body);/ Finally, send the message! (use static Transport method)/ Do this in a Thread as it sometimes is too slow for JServ/ new Thread() / public void run() / try Transport transport =session.getTransport(smtp);transport.connect(mailHost, zz3zcwb, 123456);transport.sendMessage(mesg, mesg.getAllRecipients();/ catch (MessagingException e) / throw new IllegalArgumentException(/ Transport.send() threw: + e.toString();/ / / .start();public static void send(String mailhost,String recipient, String sender, String subject, String message)throws MessagingException Mailer m = new Mailer();m.setServer(mailhost);m.addTo(recipient);m.setFrom(sender);m.setSubject(subject);m.setBody(message);m.doSend();protected ArrayList tokenize(String s) ArrayList al = new ArrayList();StringTokenizer tf = new StringTokenizer(s, ,);/ For each word found in the linewhile (tf.hasMoreTokens() / trim blanks, and add to list.al.add(tf.nextToken().trim();return al;public static void main(String args)Mailer mailer=new Mailer();mailer.s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论