Java實(shí)現(xiàn)有效時(shí)間短信驗(yàn)證碼

上周由于其他的工作繁忙,都沒(méi)時(shí)間來(lái)寫(xiě)博客,這不一有時(shí)間,就馬上來(lái)寫(xiě)最近實(shí)現(xiàn)的性功能了。

這篇主要講的是怎么讓短信驗(yàn)證碼具有時(shí)效性,我手上的項(xiàng)目要求的時(shí)效性是5分鐘,那么話不多說(shuō),我就開(kāi)始碼代碼了~這里主要還用到了第三方的短信接口,互億無(wú)線短信平臺(tái)。www.ihuyi.com

實(shí)現(xiàn)步驟:(springmvc)

1、controller中,獲取session對(duì)象,取code,取不到新生成,并存儲(chǔ)session中;

2、單手機(jī)號(hào)發(fā)送量,判斷并+1記入數(shù)據(jù)庫(kù);

3、Timer定時(shí)器,設(shè)置新線程延時(shí)執(zhí)行TimerTask任務(wù)(刪除code)

@RequestMapping(value="sendMessage",method=RequestMethod.GET)

  publicObjectsendMessage(finalHttpServletRequestrequest){

  Stringphone=request.getParameter("phone");

  inttimes=userService.messageSendToday(phone);//二次驗(yàn)證,單個(gè)手機(jī)號(hào)每日發(fā)送上限

  if(times<=MAX_PER_DAY){

  StringcheckCode=GenerateRandomCode.createRandomNumber(6);

  finalHttpSessionhttpSession=request.getSession();

  httpSession.setAttribute("checkCode",checkCode);

  CheckCodeMessagecheckCodeMessage=newCheckCodeMessage(phone,checkCode);

  try{

  HttpSender.batchSend(checkCodeMessage);

  //TimerTask實(shí)現(xiàn)5分鐘后從session中刪除checkCode

  finalTimertimer=newTimer();

  timer.schedule(newTimerTask(){

  @Override

  publicvoidrun(){

  httpSession.removeAttribute("checkCode");

  System.out.println("checkCode刪除成功");

  timer.cancel();

  }

  },5*60*1000);

  }catch(Exceptione){

  e.printStackTrace();

  }

  return"redirect:/index.jsp";

  }

  }

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文包括:1、Listener簡(jiǎn)介2、Servlet監(jiān)聽(tīng)器3、監(jiān)聽(tīng)三個(gè)域?qū)ο髣?chuàng)建和銷毀的事件監(jiān)聽(tīng)器4、監(jiān)聽(tīng)三個(gè)域?qū)?..
    廖少少閱讀 6,648評(píng)論 6 28
  • 首先在阿里云上注冊(cè)自己的賬號(hào)和密碼,然后短信模板和短信簽名是比較重要的,需要申請(qǐng)成功之后才可以使用阿里云上給你提供...
    chenMiss閱讀 2,087評(píng)論 0 3
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,011評(píng)論 0 11
  • 日期: 2017年10月25日 彬宇 “博文,我們一起下去玩吧”,“博文,我們一起牽手吧”,“博文,這個(gè)給你...
    suny123閱讀 511評(píng)論 0 0
  • “我愛(ài)你,當(dāng)我第一眼看見(jiàn)你的時(shí)候,我的心中好像有一個(gè)聲音在說(shuō),你就是我的唯一。我喜歡你,你知道嗎?” “我不能沒(méi)有...
    蠻力閱讀 339評(píng)論 0 6

友情鏈接更多精彩內(nèi)容