import org.apache.commons.mail.Email;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.SimpleEmail;
import org.apache.log4j.Logger;
public class EmailUtil {
private static final Logger LOGGER = Logger.getLogger(EmailUtil.class);
private static final String HOSTNAME = "smtp.qq.com";
public static final String POP_USERNAME = "XXX@qq.com";//此设置发送邮件的邮箱
private static final String USERNAME = "xxx"; // 设置发件邮箱的显示名
private static final String POP_PASSWORD = "dddd";//邮箱的授权码
private static final String CODING = "UTF-8";
/**
* 普通文本邮件
*/
public static void sendEmail(String toEmail,String emailSubject,String emailContent){
SimpleEmail simpleEmail = new SimpleEmail();
simpleEmail.setSSLOnConnect(true);
simpleEmail.setSslSmtpPort("465");
simpleEmail.setHostName(HOSTNAME);
simpleEmail.setAuthentication(POP_USERNAME, POP_PASSWORD);
simpleEmail.setCharset(CODING);
// setEmailBase(simpleEmail);
try {
simpleEmail.addTo(toEmail);
simpleEmail.setFrom(POP_USERNAME, USERNAME);
simpleEmail.setSubject(emailSubject);
simpleEmail.setMsg(emailContent);
simpleEmail.send();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
LOGGER.error("发送邮件失败", e);
}
}
/**
* 普通文本邮件
*/
public static void sendHtmlEmail(String[] toEmail,String emailSubject,String emailContent){
HtmlEmail htmlEmail = new HtmlEmail();
htmlEmail.setSSLOnConnect(true);
htmlEmail.setSslSmtpPort("465");
htmlEmail.setHostName(HOSTNAME);
htmlEmail.setAuthentication(POP_USERNAME, POP_PASSWORD);
htmlEmail.setCharset(CODING);
// setEmailBase(htmlEmail);
try {
htmlEmail.addTo(toEmail);
htmlEmail.setFrom(POP_USERNAME, USERNAME);
htmlEmail.setSubject(emailSubject);
htmlEmail.setHtmlMsg(emailContent);
htmlEmail.send();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
LOGGER.error("发送邮件失败", e);
}
}
public static void setEmailBase(Email email){
email.setHostName(HOSTNAME);
email.setAuthentication(POP_USERNAME, POP_PASSWORD);
email.setCharset(CODING);
}
public static void main(String[] args) {
// sendEmail("ddd@qq.com", "注册确认", "注册成功"); //ddd@qq.com接收邮箱
// String url = "http://www.baidu.com";
// String htmlMsg = "<div>请单击下面链接进行激活<br><a href='"+url+"'>"+url+"</a></div>";
// sendHtmlEmail("ddd@qq.com", "注册确认", htmlMsg);
}
}
1、代码编写完以后必须进入发送邮件的邮箱开启pop3/stmp协议,获取授权码
步骤如下图:
第二张图中获取的授权码替换程序中的即可,这样就可以发送邮件了。