Appearance
1 163邮箱服务器准备
1.1 申请邮箱
注册邮箱账号:http://reg.email.163.com/unireg/call.do?cmd=register.entrance&from=163mail
1.2 开通客户端授权
1.2.1 点击设置按钮
1.2.2 开通服务、新增授权密码
1.2.3 获得授权密码
2 QQ邮箱服务器准备
2.1 点击设置-帐户
2.2 开通邮箱服务
授权码生成的步骤,与163邮箱大致一致
3 使用java技术发送邮件
Apache commons email 是对 java 自带的 javax.mail 模块的封装。相比之下,apache-email 显然要好用得多,不过这两者本质上实际是一样的,apache-mail 实际上就是将 javax.mail 中那些让人烦心的邮件配置封装掉了。如下是 apache-mail 的使用方法:
3.1 导入依赖
xml
<!--apache mail-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.5</version>
</dependency>
3.2 HtmlEmail快速入门
html 格式的邮件应该是实际工作中应用最广的邮件格式了,它既可以是简单的文本,也可以是带样式(CSS)的文本,还可以带附件或者嵌入到文本中的图片等。apache-mail 中使用 HtmlEmail 对象来模拟 html 格式的邮件,其初始化方式如下:
java
// 创建HtmlEmail对象,封装邮件发送参数
HtmlEmail htmlEmail = new HtmlEmail();
// 设置邮件正文的编码集
htmlEmail.setCharset("utf-8");
// 设置邮件服务器的地址
htmlEmail.setHostName("smtp.163.com");
// 设置授权
htmlEmail.setAuthentication("帐号名称@163.com", "授权码");
// 设置发件人
htmlEmail.setFrom("发件人地址", "昵称");
// 添加收件人
htmlEmail.addTo("收件人地址", "昵称");
// 设置邮件主题
htmlEmail.setSubject("this is system test, do not reply!");
// 设置邮件正文
htmlEmail.setMsg("<h2>恭喜您!注册成功!</h2><a href='http://localhost:8080/xx_war_exploded/user/active?code=1234'>请点击次链接进行激活</a>");
//发送邮件
htmlEmail.send();