现在的位置: 首页 > 综合 > 正文

使用commons-email发邮件

2013年09月15日 ⁄ 综合 ⁄ 共 3194字 ⁄ 字号 评论关闭

官网下载:http://commons.apache.org/email/

commons-email是apache提供的一个开源的API,是对javamail的封装,使用时要将javamail.jar和activation.jar加到class path中,主要包括SimpleEmail,MultiPartEmail,HtmlEmail,EmailAttachment四个类。 

SimpleEmail:发送简单的email,不能添加附件
MultiPartEmail:文本邮件,可以添加多个附件
HtmlEmail:HTML格式邮件,同时具有MultiPartEmail类所有“功能”
EmailAttchment:附件类,可以添加本地资源,也可以指定网络上资源,在发送时自动将网络上资源下载发送。
①发送基本文本格式邮件:

public class MailDemo {

    
public static void main(String[] args) {
    
        SimpleEmail email 
= new SimpleEmail();
        
try {
            
//smtp host 
            email.setHostName("mail.test.com");
            
//登陆邮件服务器的用户名和密码
            email.setAuthentication("test","testpassword");
            
//接收人
            email.addTo("jdoe@somewhere.org""John Doe");
            
//发送人
            email.setFrom("me@apache.org""Me");
            
//标题
            email.setSubject("Test message");
            
//邮件内容
            email.setMsg("This is a simple test of commons-email");
            
//发送
            email.send();
        }
 catch (Exception e) {
            e.printStackTrace();
        }

    }

}
②发送文本格式,带附件邮件:
==================
//附件,可以定义多个附件对象
public class MailDemo {

    
public static void main(String[] args) {
    
        EmailAttachment attachment 
= new EmailAttachment();
        attachment.setPath(
"e:/1.pdf");
        attachment.setDisposition(EmailAttachment.ATTACHMENT);
        attachment.setDescription(
"Picture of John");
        
        MultiPartEmail email 
= new MultiPartEmail();
        
try {
            
//smtp host 
            email.setHostName("mail.test.com");
            
//登陆邮件服务器的用户名和密码
            email.setAuthentication("test","testpassword");
            
//接收人
            email.addTo("jdoe@somewhere.org""John Doe");
            
//发送人
            email.setFrom("me@apache.org""Me");
            
//标题
            email.setSubject("Test message");
            
//邮件内容
            email.setMsg("This is a simple test of commons-email");
            
//添加附件
            email.attach(attachment);
            
//发送
            email.send();
        }
 catch (Exception e) {
            e.printStackTrace();
        }

    }

}
③发送HTML格式带附件邮件:
=================
//附件,可以定义多个附件对象

public class MailDemo {

    
public static void main(String[] args) {
    
        EmailAttachment attachment 
= new EmailAttachment();
        attachment.setPath(
"e:/1.pdf");
        attachment.setDisposition(EmailAttachment.ATTACHMENT);
        attachment.setDescription(
"Picture of John");
        
        HtmlEmail email 
= new HtmlEmail();
        
try {
            
//smtp host 
            email.setHostName("mail.test.com");
            
//登陆邮件服务器的用户名和密码
            email.setAuthentication("test","testpassword");
            
//接收人
            email.addTo("jdoe@somewhere.org""John Doe");
            
//发送人
            email.setFrom("me@apache.org""Me");
            
//标题
            email.setSubject("Test message");
            
//邮件内容
            email.setHtmlMsg("<b>This is a simple test of commons-email</b>");
            
//添加附件
            email.attach(attachment);
            
//发送
            email.send();
        }
 catch (Exception e) {
            e.printStackTrace();
        }

    }

}

感觉经常会用到,先收藏起来。

引自:http://www.lookcode.net/Article/69312.aspx

抱歉!评论已关闭.