EmailUtil

package mail;


import java.util.List;


import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.SimpleEmail;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;


import com.google.common.base.Strings;
import com.google.common.collect.Lists;


/**
 * @author Andypan
 * @date 2017年8月21日下午4:19:38
 */
public class EmailUtil
{
private static Logger logger = Logger.getLogger(EmailUtil.class);
static
{
BasicConfigurator.configure();
}


public static void main(String[] args) {

sendHtmlEmail(Lists.newArrayList("zoumingxuan*******.com"), Lists.newArrayList("177****0@163.com"),
"andy****20@sina.com", "*****", "smtp.sina.com", "抄送测试",
"<h1 style='color:red'>明天下午3:00会议室讨论</h1>" + " 请准时参加!");
}


/**

* @param receiverList
*            接件人列表
* @param ccList
*            抄送人列表
* @param senderMailBox
*            发送者邮箱
* @param senderPasswd
*            发送者邮箱密码
* @param stmpServer
*            smtp服务器
* @param subject
*            主题
* @param content
*            内容
* @return
*/
public static boolean sendSimpleEmail(List<String> receiverList, List<String> ccList, String senderMailBox,
String senderPasswd, String stmpServer, String subject, String content) {
boolean sentSuccess = false;
SimpleEmail email = new SimpleEmail();
email.setHostName(stmpServer);// 设置使用发电子邮件的邮件服务器,这里以qq邮箱为例(其它例如:【smtp.163.com】,【smtp.sohu.com】)
try
{
// 收件人邮箱列表
receiverList.stream().filter(e -> !Strings.isNullOrEmpty(e)).forEach(e -> {
try
{
email.addTo(e);
} catch (EmailException e1)
{
logger.error("add email " + e + "to receiverList error", e1);
}
});


// 抄送人邮箱列表
ccList.stream().filter(e -> !Strings.isNullOrEmpty(e)).forEach(e -> {
try
{
email.addCc(e);
} catch (EmailException e1)
{
logger.error("add email " + e + "to ccList error", e1);
}
});
// email.setDebug(true);
// 邮箱服务器身份验证
email.setAuthentication(senderMailBox, senderPasswd);
// 发件人邮箱
email.setFrom(senderMailBox);
// 邮件主题
email.setSubject(subject);
// 邮件内容
email.setMsg(content);
// 发送邮件
email.send();
sentSuccess = true;
logger.info("send successfully");
} catch (EmailException ex)
{
logger.error("send email error", ex);
}
return sentSuccess;
}


/**

* @param receiverList
*            接件人列表
* @param ccList
*            抄送人列表
* @param senderMailBox
*            发送者邮箱
* @param senderPasswd
*            发送者邮箱密码
* @param stmpServer
*            smtp服务器
* @param subject
*            主题
* @param content
*            内容
* @return
*/
public static boolean sendHtmlEmail(List<String> receiverList, List<String> ccList, String senderMailBox,
String senderPasswd, String stmpServer, String subject, String content) {
boolean sentSuccess = false;
HtmlEmail email = new HtmlEmail();
email.setHostName(stmpServer);// 设置使用发电子邮件的邮件服务器,这里以qq邮箱为例(其它例如:【smtp.163.com】,【smtp.sohu.com】)
email.setCharset("utf-8");
try
{
// 收件人邮箱列表
receiverList.stream().filter(e -> !Strings.isNullOrEmpty(e)).forEach(e -> {
try
{
email.addTo(e);
} catch (EmailException e1)
{
logger.error("add email " + e + "to receiverList error", e1);
}
});


// 抄送人邮箱列表
ccList.stream().filter(e -> !Strings.isNullOrEmpty(e)).forEach(e -> {
try
{
email.addCc(e);
} catch (EmailException e1)
{
logger.error("add email " + e + "to ccList error", e1);
}
});
// email.setDebug(true);
// 邮箱服务器身份验证
email.setAuthentication(senderMailBox, senderPasswd);
// 发件人邮箱
email.setFrom(senderMailBox);
// 邮件主题
email.setSubject(subject);
// 邮件内容
email.setMsg(content);
// 发送邮件
email.send();
sentSuccess = true;
logger.info("send successfully");
} catch (EmailException ex)
{
logger.error("send email error", ex);
}
return sentSuccess;
}


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值