今天实现了一个有效期两分钟的验证码,过期后自动在session中销毁。
try {
final HttpSession httpSession=request.getSession();
httpSession.setAttribute("number",num);
final Timer timer=new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
httpSession.removeAttribute("number");
System.out.println("number删除成功");
timer.cancel();
}
},2*60*1000);
} catch (Exception e) {
e.printStackTrace();
}
这样就能实现了。
以下再记录一下如何验证:用户输入的验证码是否和存在session中的验证码相同
public String eqEmail(String validateCode,HttpServletRequest httpServletRequest){
String num = (String)
//这里的 NUM_EMAIL 是存在Session里的名字 就好比上面的number
httpServletRequest.getSession().getAttribute("NUM_EMAIL");
if(validateCode.equals(num)){
return ("验证成功,加油,奥利给")
}else{
return ("验证失败,你是猴子请来的救兵吧?")
}
}
END
加油吧,秃头人。没对象没知识库存量,生活太难了,且行且珍惜!!!