⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mailwrapzeng.java~20~

📁 Mail Of Java
💻 JAVA~20~
字号:
package mailofjava;import javax.mail.*;import javax.mail.internet.*;import java.util.*;import java.io.*;/*@@本程序试图封装邮件类,这样用户使用更简单,指定收信人发信人主题内容就可以发送,非常方便!注意,邮件可以发送给多个人,抄送多个人。*//*苏州职业大学计算机系 曾海2003-7*/public class MailWrapZeng {  private ArrayList to=new ArrayList();//上一章学的终于用上了。嘿嘿  private ArrayList cc=new ArrayList();  private ArrayList bcc=new ArrayList();  private Message msg;  private Session session;  private String from;//发信只能一个人  private String subject;  private String body;  private String computer;//发送的主机名/*下面是一堆例行的get/set 方法,不可以直接存取private成员 */ public String getFrom() { return from;}; public void setFrom(String fm) { from=fm;}; public String getSub() { return subject;}; public void setSub(String sb){ subject=sb;}; //这里是关于to的方法4个。 public ArrayList getToTable(){ return to;}; public void setToTable(ArrayList tolist){ to=tolist;}; public void addToUser(String ss){ to.add(ss);}; public void setTo(String ss){ to.add(ss);}; //下面是cc的 public ArrayList getCcTable(){ return cc;}; public void setCcTable(ArrayList ccvalue){ cc=ccvalue;}; public void addToCc(String ss){ cc.add(ss);}; public void setCcTable(String ss){ cc.add(ss);};//bcc的我就不写了,大家补全 public void setText(String text){ body=text;}; public void setMailServer(String hostname){ computer=hostname;};//下面的方法检查是不是参数填得正确 public boolean isOkay(){   if( from==null || from.length() ==0){     System.err.println("没有from字段");     return false;   };   if( subject==null || subject.length() ==0){       System.err.println("没有subject字段");     return false;   };    if( to.size()  ==0){       System.err.println("没有to 字段");     return false;    };     if( body==null || body.length() ==0){       System.err.println("没有内容");     return false;     };    if( computer ==null || computer.length() ==0){      System.err.println("没有指定服务器");     return false;    };     return true; }//ois okaypublic synchronized void go() throws MessagingException{  if(!isOkay())      throw new IllegalArgumentException("go: i have no sufficient parameters");  Properties prop=new Properties();  prop.put("mail.smtp.host",computer);  session=Session.getDefaultInstance(prop,null);  msg=new MimeMessage(session);//一个message  InternetAddress address[];//地址数缓   //取得to 地址列表  address= new InternetAddress[to.size()];  for(int i=0;i<to.size();i++)    address[i]=new InternetAddress((String) to.get(i));  msg.setRecipients(Message.RecipientType.TO ,address);   msg.setFrom(new InternetAddress(from));  address=new InternetAddress[cc.size() ];  for(int i=0;i<cc.size();i++)      address[i]= new InternetAddress( (String) cc.get(i));  msg.setRecipients(Message.RecipientType.CC ,address);  msg.setSubject(subject);  msg.setText(body); //可以直接transport.send(,sg)不过呢,比较慢,所以不死等了  Thread dd=new Thread(){    public void run(){      try{        Transport.send(msg);      }catch(MessagingException e){        throw new IllegalArgumentException( "go threw:"+e.toString() );      };//try    };//run };//thread  dd.start() ;};public static void send(String MailServer,String recipent,String Sender,String mySubject,                        String myMessage) throws MessagingException{   MailWrapZeng zeng =new MailWrapZeng();   zeng.setMailServer(MailServer);   zeng.addToUser(recipent);   zeng.setFrom(Sender);   zeng.setSub(mySubject);   zeng.setText(myMessage);   zeng.go() ;}//  public MailWrapZeng() {  }  public static void main(String[] argv){    try{    MailWrapZeng.send("127.0.0.1","Mithrandir@ddn-00887","me","Hello","test only");    } catch(MessagingException err){ err.printStackTrace(); };  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -