这项技术很常见,比如我们在注册一个新浪博客的时候,注册后要向你的邮箱发生一个邮件,点击这个邮件完成激活,然后就可以注册成功。code如下:
//可以写一个你自己的邮箱地址
public static final String FROM = ""; private JavaMailSender mailSender; //加密
private INiubiEncrypter niubiEncrypter;
public void sendValidateMail(User user) { MimeMessage mailMessage = mailSender.createMimeMessage(); try { MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage,true,"utf-8");
//发给那个邮件 messageHelper.setTo(user.getEmail());
//从什么地方发 messageHelper.setFrom(FROM);
//邮件主题 messageHelper.setSubject("测试邮件");
//code String code=niubiEncrypter.sendEmailEncrypt(user.getEmail());
//发送的内容当然你要写相应的action来处理(这个doemail.action的作用就是判断用户是否点击这个链接。参数有 user.email和code ,) messageHelper.setText("
http://127.0.0.1:8080/niubi04/doemail.action?user.email="+ user.getEmail() +"&code="+code+"
",true);
mailSender.send(mailMessage); } catch (MessagingException e) { e.printStackTrace(); } }验证用户是否点击这个链接激活了,就要的是code。
在doemail.action里面需要写的方法是:把这个email从数据库中拿出来,把他按照原来上面例子中的加密方法加密,和code比较,如果相等,这证明用户是点击了正确的链接激活,在把user表中的一个专门标记的status改为1.这样就基本上完成了这样的一个作用