利用jMail1.4.2发送邮件(转)

1.准备好包,到sun.com下载jmail1.4.2的jar包,下载解压后,将Mail.jar包拷贝到您的java工程,如helloworld

2.打开测试的java工程,将Mail.jar包加入.新建一个类Email

3.在类中分别设置关键的类的实例及其属性。如Session,Message,Transport,Properties等,详见下方.

4.运行测试.

5.小结:在调试过程中,会出一个小小的错误,提示找不到类的错误,这时是jMail1.4.2与j2ee5.Lib库中的类发生冲突,只要删除j2ee5.Lib库即可。

6.附:运行环境eclipse3.3+jdk1.6+jmail1.4.2

import java.util.Date;
import java.util.Properties;
import java.io.*;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

 

public class Email {

/**
* @param args
*/
public static void main(String[] args) {
   // TODO Auto-generated method stub
    InternetAddress[] address=null;
    String mailServer="smtp.163.com";
    String From="[email protected]";
    String To="[email protected]";
    String subject="this is a test";
    String content="hello,my email";
    Transport transport;   
    boolean sessionDebug=false;
    try{
    
     Properties   props=new   Properties();//也可用Properties   props   =   System.getProperties();    
     props.put("mail.smtp.host","smtp.163.com");//存储发送邮件服务器的信息  
     props.put("mail.smtp.auth","true");//同时通过验证  
     Session   s=Session.getInstance(props);//根据属性新建一个邮件会话  
     s.setDebug(true);  
        
     MimeMessage message=new MimeMessage(s);//由邮件会话新建一个消息对象  
        
     //设置邮件  
     InternetAddress from=new InternetAddress(From);  
     message.setFrom(from);//设置发件人  
     InternetAddress to=new InternetAddress(To);  
     message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO  
     message.setSubject(subject);//设置主题  
     message.setText(content);//设置信件内容  
     message.setSentDate(new java.util.Date());//设置发信时间  
        
     //发送邮件  
     message.saveChanges();//存储邮件信息  
     transport=s.getTransport("smtp");  
     transport.connect("smtp.163.com","abcdefg","123456");//以smtp方式登录邮箱  
     transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有  
     //已设好的收件人地址  
     props.put("mail.smtp.quitwait", "false");
     transport.close();   
     System.out.println("email send ok.");
    }
    catch(MessagingException mex)
    {
     mex.printStackTrace();     
     
    }
}

}

 

你可能感兴趣的:(利用jMail1.4.2发送邮件(转))