package org.study.accountactivate.util;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message.RecipientType;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.study.accountactivate.domail.User;
public class EmailUtils {
//serverEmail
private static final String FROM = "363953662@qq.com";
/**
* 注册成功后,向用户发送帐户激活链接的邮件
* @param user 未激活的用户
*/
public static void sendAccountActivateEmail(User user) {
Session session = getSession();
// session.setDebug(true);
MimeMessage message = new MimeMessage(session);
SimpleDateFormat sFormat = new SimpleDateFormat("yyyy年MM月dd日 HH时MM分");
try {
String src=GenerateLinkUtils.generateActivateLink(user);
//----------------------------//
String TextContent="<table width=\"760\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"+
"<tbody><tr><td style=\"font-size:12px\"><div style=\"width:700px;height:30px;line-height:22px;padding:25px 30px 0 30px;font-size:14px;border-bottom:dashed 1px #5b5b5b\">"+
user.getUserName()+
" 您好!</div><div style=\"width:700px;line-height:22px;padding:10px 30px 0 30px\">" +
"<p>"+sFormat.format(new Date()) +"恭喜你成功注册星星之家平台。</p><br/><br/>"+
"<p style=\"font-family:Arial, Helvetica, sans-serif\"><a href='" + src+"'>点击激活帐户</a> <br/> <a href='"+src+"' title='点击激活帐户'>"+src+"</a></p>"+
"<br/><br/><p>这是一封系统邮件,请勿直接回复。</p></div></td></tr></tbody></table>";
//----------------------------//
String nick=javax.mail.internet.MimeUtility.encodeText("星星之家");
message.setSubject("欢迎注册星星之家平台!");
message.setSentDate(new Date());
// message.setFrom(new InternetAddress(FROM));
message.setFrom(new InternetAddress(nick + "<"+FROM+">"));
message.setRecipient(RecipientType.TO, new InternetAddress(user.getEmail()));
message.setContent(TextContent,"text/html;charset=utf-8");
// 发送邮件
// System.out.println(str);
Transport.send(message);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 发送重设密码链接的邮件
*/
public static void sendResetPasswordEmail(User user) {
Session session = getSession();
MimeMessage message = new MimeMessage(session);
try {
message.setSubject("找回您的帐户与密码");
message.setSentDate(new Date());
message.setFrom(new InternetAddress(FROM));
message.setRecipient(RecipientType.TO, new InternetAddress(user.getEmail()));
message.setContent("要使用新的密码, 请使用以下链接启用密码:<br/><a href='" + GenerateLinkUtils.generateResetPwdLink(user) +"'>点击重新设置密码</a>","text/html;charset=utf-8");
// 发送邮件
Transport.send(message);
// System.out.println(request.getRemoteAddr());
} catch (Exception e) {
e.printStackTrace();
}
}
public static Session getSession() {
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.host", "smtp.qq.com");
props.setProperty("mail.smtp.port", "25");
props.setProperty("mail.smtp.auth", "true");
Session session = Session.getInstance(props, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(FROM, "密码");
}
});
return session;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Java通过邮箱找回密码和注册
共79个文件
class:19个
java:18个
tld:15个
4星 · 超过85%的资源 需积分: 50 164 下载量 200 浏览量
2015-08-20
17:35:36
上传
评论 5
收藏 810KB RAR 举报
温馨提示
清晰明了方便,代码都有明确的详细说明。无私的分享。。。希望对大家有用。项目急用可直接使用。
资源推荐
资源详情
资源评论
收起资源包目录
JavaMail.rar (79个子文件)
JavaMail
.project 1KB
.mymetadata 298B
src
org
study
accountactivate
domail
User.java 1KB
dao
UserDao.java 320B
impl
UserDaoImpl.java 3KB
web
servlet
ResetPasswordUIServlet.java 1KB
UpdateUIServlet.java 1KB
AccountActivateUIServlet.java 1KB
RegisterServlet.java 3KB
RegisterUIServlet.java 1KB
ForgotPwdUIServlet.java 1KB
UpdateServlet.java 2KB
ApplyActivateLink.java 2KB
LoginServlet.java 2KB
ForgotPwdServlet.java 2KB
ActivateAccountServlet.java 1KB
ResetPasswordServlet.java 2KB
LoginUIServlet.java 1KB
util
GenerateLinkUtils.java 2KB
EmailUtils.java 4KB
password.dat 11B
WebRoot
WEB-INF
fmt-1_0-rt.tld 11KB
sql.tld 8KB
pages
register.jsp 1013B
registerSuccess.jsp 496B
forgotPwdSuccess.jsp 401B
forgotPwd.jsp 706B
updateSuccess.jsp 466B
update.jsp 818B
resetPasswordSuccess.jsp 447B
login.jsp 1013B
resetPassword.jsp 979B
loginSuccess.jsp 1KB
accountActivateSuccess.jsp 494B
c-1_0-rt.tld 11KB
sql-1_0.tld 6KB
permittedTaglibs.tld 1KB
x-1_0.tld 7KB
classes
org
study
accountactivate
domail
User.class 2KB
dao
impl
UserDaoImpl.class 3KB
UserDao.class 396B
web
servlet
UpdateUIServlet.class 1KB
ApplyActivateLink.class 2KB
ResetPasswordUIServlet.class 1KB
LoginServlet.class 3KB
ActivateAccountServlet.class 2KB
ResetPasswordServlet.class 3KB
ForgotPwdServlet.class 2KB
UpdateServlet.class 3KB
ForgotPwdUIServlet.class 1KB
LoginUIServlet.class 1KB
RegisterUIServlet.class 1KB
AccountActivateUIServlet.class 1KB
RegisterServlet.class 4KB
util
GenerateLinkUtils.class 3KB
EmailUtils.class 4KB
EmailUtils$1.class 743B
password.dat 11B
lib
mail.jar 426KB
jstl.jar 17KB
standard.jar 343KB
fn.tld 7KB
x-1_0-rt.tld 7KB
fmt-1_0.tld 12KB
c.tld 16KB
c-1_0.tld 11KB
fmt.tld 19KB
sql-1_0-rt.tld 5KB
web.xml 6KB
x.tld 12KB
scriptfree.tld 2KB
webfile
Regist.jsp 3KB
index.jsp 550B
js
common
jquery.min.js 91KB
Regist.js 4KB
META-INF
MANIFEST.MF 39B
.myeclipse
.settings
com.genuitec.eclipse.j2eedt.core.prefs 1KB
org.eclipse.core.resources.prefs 837B
.classpath 545B
共 79 条
- 1
资源评论
- Alcoholsong2017-02-22不错不错,学习了
- 墨咖2019-08-14这个数据库配置怎么整呢?
- liuhongbinlove2018-07-19不错不错,学习了
lixia_yat
- 粉丝: 2
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功