alibabamama 发表于 2017-1-4 07:33:38

利用Apache Commons Email发送邮件

  Apache Commons Email对JavaMail进行了封装,从而简化其操作,使用起来非常方便。
  到 Apache 官方网站下载所需要的包,在 http://commons.apache.org/  下的 Email 子项目中下载它的最新版本,将其引入到工程中,一般引他的核心包 commons-email-1.1.jar 就足够了。下面是我写的一个简单的小例子,已经经过测试:

package com.why.email;
import java.io.File;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.SimpleEmail;
import org.apache.commons.mail.MultiPartEmail;
public class SendMail {
/**
* 利用 Apache Commons Email 组件(commons-email-1.1)发送邮件
* @param args
*/
public static void main(String[] args) {
//SimpleEmail email = new SimpleEmail();//如果发送普通的邮件,使用这个类就可以了
MultiPartEmail email = new MultiPartEmail();//如果要发送带附件的邮件,需使用这个类
//HtmlEmail email = new HtmlEmail();//可以发送html类型的邮件
email.setHostName("smtp.163.com");//指定要使用的邮件服务器
email.setAuthentication("1985why001", "******");//使用163的邮件服务器需提供在163已注册的用户名、密码
email.setCharset("UTF-8");
try {
email.setFrom("1985why001@163.com");//设置发件人
email.addTo("wuhy39@chinaunicom.cn");//设置收件人
email.setSubject("测试邮件");//设置主题
email.setMsg("测试邮件测试邮件测试邮件");//设置邮件内容
File file = new File("C:\\testEmail.txt");//要发送的附件
EmailAttachment attachment = new EmailAttachment();
attachment.setPath(file.getPath());
attachment.setName(file.getName());
attachment.setDescription("附件描述");
attachment.setDisposition(EmailAttachment.ATTACHMENT);//附件的类型
email.attach(attachment);
email.send();
System.out.println("发送成功");
} catch (EmailException e) {
e.printStackTrace();
}
}
}
页: [1]
查看完整版本: 利用Apache Commons Email发送邮件