commons-email是apache提供的一个开源的API,其提供远程邮箱服务,实现在代码中发送邮件的功能。
使用时需要引入jar包,有两种方式:
1.直接引入jar包,将commons-email.jar文件放入项目lib文件夹中;
2.通过maven导入依赖:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.5</version>
</dependency>
代码示例:
/**
* 使用Commons-Email发送邮件
*/
public class CommonsEmailTest {
/**
* 发送简单文本邮件
*/
public void sendSimpleTextEmail() throws EmailException {
// 发送简单的email,不能添加附件
Email email = new SimpleEmail();
// 邮件服务器域名
email.setHostName("smtp.163.com");
// 用户名和密码为邮箱的账号及授权码
email.setAuthenticator("用户名", "密码");
// 设置字符编码方式
email.setCharset("UTF-8");
// 发件人
email.setFrom("xxx@163.com");
// 收件人
email.addTo("xxx@qq.com");
// 邮件主题
email.setSubject("测试邮件");
// 邮件正文
email.setMsg("这是一个测试邮件");
// 发送
email.send(); }
若要将项目部署到服务器上,建议修改端口号为465;否则不必修改端口号,默认邮箱服务端口号为25;
阿里云等云服务器已禁用25端口,最好使用465第三方提供的服务端口号。
以阿里云服务器为例:
1.在阿里云服务器安全组中开放465端口
2.在代码中设置端口号;
// 设置邮件服务器smtp协议的SSL端口,默认端口号为25;
email.setSmtpPort(465);
// SSL安全连接
email.setSSLOnConnect(true);