程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java生成動態版驗證碼的方法實例

Java生成動態版驗證碼的方法實例

編輯:關於JAVA

Java生成動態版驗證碼的方法實例。本站提示廣大學習愛好者:(Java生成動態版驗證碼的方法實例)文章只能為提供參考,不一定能成為您想要的結果。以下是Java生成動態版驗證碼的方法實例正文


前言

相對來說呢,jpg格式的相對來說容易破解一點,當然也取決於你的干擾元素,元素越復雜,破解也就難度越高,有的加的多,人都識別不出來了,何況人呢。都是概率問題。

GIF格式 + 干擾元素,那麼驗證碼破解難度又上了一個層次

上代碼:

 /**
  * 獲取驗證碼(Gif版本)
  * @param response
  */
 @RequestMapping(value="getGifCode",method=RequestMethod.GET)
 public void getGifCode(HttpServletResponse response,HttpServletRequest request){
  try {
  response.setHeader("Pragma", "No-cache"); 
   response.setHeader("Cache-Control", "no-cache"); 
   response.setDateHeader("Expires", 0); 
   response.setContentType("image/gif"); 
   /**
    * gif格式動畫驗證碼
    * 寬,高,位數。
    */
   Captcha captcha = new GifCaptcha(146,33,4);
   //輸出
   captcha.out(response.getOutputStream());
   HttpSession session = request.getSession(true); 
   //存入Session
   session.setAttribute("_code",captcha.text().toLowerCase()); 
  } catch (Exception e) {
  LoggerUtils.fmtError(getClass(),e, "獲取驗證碼異常:%s",e.getMessage());
  }
 }

使用挺簡單的,但是用了其他人封裝的工具類。下面會提供下載鏈接的。

這些個工具類,還提供了這個氣泡版本的jpg格式驗證碼方式。

代碼如下:

 /**
  * 獲取驗證碼(jpg版本)
  * @param response
  */
 @RequestMapping(value="getJPGCode",method=RequestMethod.GET)
 public void getJPGCode(HttpServletResponse response,HttpServletRequest request){
  try {
  response.setHeader("Pragma", "No-cache"); 
  response.setHeader("Cache-Control", "no-cache"); 
  response.setDateHeader("Expires", 0); 
  response.setContentType("image/jpg"); 
  /**
  * jgp格式驗證碼
  * 寬,高,位數。
  */
  Captcha captcha = new SpecCaptcha(146,33,4);
  //輸出
  captcha.out(response.getOutputStream());
  HttpSession session = request.getSession(true); 
  //存入Session
  session.setAttribute("_code",captcha.text().toLowerCase()); 
  } catch (Exception e) {
  LoggerUtils.fmtError(getClass(),e, "獲取驗證碼異常:%s",e.getMessage());
  }
 }

有興趣的朋友可以下載源碼看看。

vcode-sojson.com(jb51.net).rar

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對的支持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved