后台登陆界面之忘记密码功能的实现(通过邮件重置密码)
这两天接触到了忘记密码这个功能,在网上查了好久的资料,虽然原理很多部分还没有理解,但是功能已经实现。
下面实现的代码,放到这里以备后用。
1.发送邮件需要的基本信息。
1 package edu.bookstore.util; 2 3 /** 4 * 发送邮件需要使用的基本信息 5 */ 6 import java.util.Properties;
7 public class MailSenderInfo { 8 // 发送邮件的服务器的IP和端口 9 private String mailServerHost; 10 private String mailServerPort = "25"; 11 // 邮件发送者的地址 12 private String fromAddress; 13 // 邮件接收者的地址 14 private String toAddress; 15 // 登陆邮件发送服务器的用户名和密码 16 private String userName; 17 private String password; 18 // 是否需要身份验证 19 private boolean validate = false; 20 // 邮件主题 21 private String subject; 22 // 邮件的文本内容 23 private String content; 24 // 邮件附件的文件名 25 private String[] attachFileNames; 26 /** 27 * 获得邮件会话属性 28 */ 29 public Properties getProperties(){ 30 Properties p = new Properties(); 31 p.put("mail.smtp.host", this.mailServerHost); 32 p.put("mail.smtp.port", this.mailServerPort); 33 p.put("mail.smtp.auth", validate ? "true" : "false"); 34 return p; 35 } 36 public String getMailServerHost() { 37 return mailServerHost; 38 } 39 public void setMailServerHost(String mailServerHost) { 40 this.mailServerHost = mailServerHost; 41 } 42 public String getMailServerPort() { 43 return mailServerPort; 44 } 45 public void setMailServerPort(String mailServerPort) { 46 this.mailServerPort = mailServerPort; 47 } 48 public boolean isValidate() { 49 return