日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Jsp servlet驗證碼工具類分享

瀏覽:737日期:2022-06-07 15:41:35

昨晚在csdn看到一位前輩寫一個ajax+servlet+jsp驗證,頓時心血來潮,在閱讀前輩的代碼下我親手體驗一下,做了一個驗證碼生成工具類,以供大家做個參考。

1、添加VeriyCodeUtils類生成驗證碼圖像

package com.servlet;  import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.OutputStream; import java.util.Random;  import javax.imageio.ImageIO;  /**  *  * @author hubiao  *  驗證碼生成器  * 用到API  *  BufferedImage 創建一個圖像  *  Graphics2D 繪制  *   fillRect(x,y,width,height);背景  *   font()字體  *   drawRect();邊框  *   drawLine();線  *   drwaString:圖像數據  *  ImageIO 生成圖像  */ public class VeriyCodeUtils {  /**   * @param output 保存驗證圖像的流   * @return 驗證碼   */  public static String newVeriyCode(OutputStream output)  {   int width = 90;   int height = 40;   int codeCount = 5;   char[] codeSequence = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J",      "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W",      "X", "Y", "Z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };      //創建圖像對象,8位RGB   BufferedImage buffered = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);      //通過Crapahices來繪制圖像到BufferedImage中   Graphics2D gra = buffered.createGraphics();      //設置圖片背景:白色   gra.setColor(Color.WHITE);   gra.fillRect(0, 0, width, height);      //設置字體,字體大小根據圖片高度決定   gra.setFont(new Font("Fixedsys",Font.PLAIN,height-2));      //設置邊框:黑色,1cm   gra.setColor(Color.BLACK);   gra.drawRect(0, 0, width-1, height-1);      //生成10條黑色干擾線   gra.setColor(Color.BLACK);   Random ran = new Random();   for(int i = 0; i < 70;i++)   {    int x = ran.nextInt(255);    int y = ran.nextInt(255);    int x1 = ran.nextInt(255);    int y1 = ran.nextInt(255);    gra.drawLine(x, y,x+x1, y+y1);//畫直線   }   //生成驗證碼   StringBuffer sb = new StringBuffer();   int r = 0,g = 0,b = 0;   for(int i = 0; i < codeCount; i++)   {    String strRand = String.valueOf(codeSequence[ran.nextInt(codeSequence.length)]);    //對每位驗證碼都生成不同的顏色,增加識別系統難度    r = ran.nextInt(255);    g = ran.nextInt(255);    b = ran.nextInt(255);    gra.setColor(new Color(r, g, b));    gra.drawString(strRand, (i+1)*13, height-4);    sb.append(strRand);   }   try {    ImageIO.write(buffered, "jpeg", output);   } catch (Exception e) {    throw new RuntimeException(e);   }      return sb.toString();  } } 

2、servlet使用驗證碼

protected void doPost(HttpServletRequest req, HttpServletResponse resp)    throws ServletException, IOException {   //禁止圖像緩存   resp.setHeader("Pragma", "no-cache");    resp.setHeader("Cache-Control", "no-cache");    resp.setDateHeader("Expires", 0);    resp.setContentType("image/jpeg");      //生成驗證碼圖像   String veriyCode = VeriyCodeUtils.newVeriyCode(resp.getOutputStream());      //將驗證碼保存到session中   HttpSession session = req.getSession();   session.setAttribute("validateCode", veriyCode);  } 

3、JSP頁面使用驗證碼

</head>  <script type="text/javascript">   function createCode()   {    var t = new Date().getTime();//防止頁面緩存,使用時間搓    var srcImg = document.getElementById("srcImg");    srcImg.src="/ImgVeifyWeb/vity.do?"+t;   }  </script>  <body>  <h1>${requestScope.code}</h1>  <img id="srcImg" src="<c:url value="/vity.do"></c:url>" /> #這里使用直接讓img訪問servlet,通過response響應一個圖像流  <a href="##" rel="external nofollow" id="codeId" onclick="createCode()">換一張</a>  <form action="<c:url value="/hello.do"></c:url>" method="post">   <input type="text" name="codeVify"/>   <input type="submit" value="提交"/>  </form>  </body> 

4、校驗驗證碼

protected void doPost(HttpServletRequest req, HttpServletResponse resp)    throws ServletException, IOException {   HttpSession session = req.getSession();   Object validateCode = session.getAttribute("validateCode");   System.out.println(validateCode);      String codeVify = req.getParameter("codeVify");   if(codeVify==null || codeVify.equals(""))   {    req.setAttribute("code","驗證證不能為空");    req.getRequestDispatcher("/index.jsp").forward(req, resp);    return;   }else if(!validateCode.toString().equalsIgnoreCase(codeVify))   {    req.setAttribute("code","驗證證錯誤");    req.getRequestDispatcher("/index.jsp").forward(req, resp);    return;   }   System.out.println("下面開始 做其他業務操作....");  } 

校驗圖如下:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。

標簽: JSP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩欧美二区| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲小说春色综合另类电影| 丝袜av一区| 成人日韩在线观看| 亚洲午夜精品久久久久久app| 婷婷六月综合| 伊人精品视频| 亚洲制服一区| 欧美精品国产| 国产亚洲久久| 91欧美国产| 日韩精品久久久久久久电影99爱| 国模 一区 二区 三区| 免费在线观看成人| 91精品国产自产在线丝袜啪| 精品视频91| 亚洲天堂成人| 国产午夜久久| 日韩欧美美女在线观看| **爰片久久毛片| 97视频热人人精品免费| 亚洲精品国产偷自在线观看| 亚洲精品观看| 国产一区二区三区四区二区 | 成人午夜亚洲| 美女毛片一区二区三区四区| 日韩精选在线| 久久久久免费| 亚洲精品黄色| 国产99在线| 好吊一区二区三区| 欧美另类中文字幕| 久久久噜噜噜| 日本h片久久| 日本免费在线视频不卡一不卡二| 国产aⅴ精品一区二区四区| 99亚洲视频| 另类欧美日韩国产在线| 夜夜嗨一区二区| 久久精品国产福利| 久久亚洲图片| 亚洲www免费| 日韩av电影一区| 久久久一二三| 免费亚洲婷婷| 伊人久久亚洲美女图片| 麻豆久久久久久| 免费成人在线观看| 日本一区二区高清不卡| 亚洲精品伊人| 婷婷激情图片久久| 都市激情国产精品| 欧美日韩亚洲一区二区三区在线| 欧美日韩国产免费观看 | 亚洲日韩中文字幕一区| 久久国产中文字幕| 成人免费一区| 国产精品亚洲欧美一级在线| 国产精品毛片在线看| 亚洲免费福利| 国产日韩欧美一区二区三区| 国产一区日韩一区| 国产精品原创| 精品资源在线| 国产伦精品一区二区三区千人斩| 首页亚洲欧美制服丝腿| 四虎884aa成人精品最新| 国产精品国产三级在线观看| 在线精品国产亚洲| 成人av二区| 欧洲一区二区三区精品| 国产精品mv在线观看| 日韩一区网站| 国产一区91| 九一国产精品| 久久精品国产大片免费观看| 91av亚洲| 国产盗摄——sm在线视频| 国产日韩高清一区二区三区在线| 日本欧美在线看| 日韩一级网站| 伊人精品视频| 夜夜精品视频| 99riav国产精品| 国产一区白浆| 一区二区电影在线观看| 日韩中文字幕av电影| 欧美一级专区| 99国产精品99久久久久久粉嫩| 久久精品国产大片免费观看| 亚洲国产综合在线看不卡| 激情欧美一区二区三区| 久久精品亚洲人成影院| 97视频热人人精品免费| 日韩国产激情| 日韩不卡在线| 久久一区二区三区喷水| 久久精品国产99久久| 久久国产直播| 不卡一区综合视频| 亚洲91精品| 91久久在线| 亚洲精一区二区三区| 亚洲91在线| 亚洲精品人人| 91精品视频一区二区| 国产精品15p| 97欧美在线视频| 日韩另类视频| 一区在线视频观看| 日本不卡不码高清免费观看| 国产欧美视频在线| 精品国产乱码久久久久久樱花 | aa亚洲婷婷| 亚洲乱码视频| 国产精品主播| 麻豆精品99| 日本不良网站在线观看| 视频福利一区| 亚洲有吗中文字幕| 麻豆视频一区| 精品一区欧美| 日本va欧美va精品发布| 久久一区二区三区电影| 中文字幕一区二区三区在线视频| 日韩和欧美一区二区三区| 国产极品模特精品一二| a国产在线视频| 午夜电影亚洲| 国产探花在线精品一区二区| 国产中文字幕一区二区三区| 亲子伦视频一区二区三区| 亚洲免费在线| 国产精品香蕉| 久久亚洲精品中文字幕蜜潮电影| 亚洲欧美久久久| 国产精品日本一区二区不卡视频| 高清不卡亚洲| 综合激情视频| 岛国av免费在线观看| 免费国产自线拍一欧美视频| 国产欧美三级| 不卡中文字幕| 国产欧美日韩综合一区在线播放| 国产福利片在线观看| 9国产精品视频| 91精品尤物| 久久精品国产99久久| 欧美日韩亚洲一区三区| 亚洲成人不卡| 日韩三级精品| 99热国内精品| 久久精品72免费观看| 国产99久久| 久久爱www成人| 亚洲综合不卡| 日韩国产在线| 久久激情五月婷婷| 尹人成人综合网| 精品入口麻豆88视频| 亚洲视频二区| 日韩中文视频| 国产精品22p| 亚洲精品在线a| 亚洲国内欧美| 精品视频91| 88久久精品| 欧美日韩三区| 韩国精品主播一区二区在线观看| 国产精品分类| 日韩一区网站| 鲁大师影院一区二区三区| 国产白浆在线免费观看| 欧美日韩99| 免费成人av在线播放| 欧美.日韩.国产.一区.二区| 久久久精品国产**网站| 亚洲精品伦理| 天堂va蜜桃一区二区三区| 欧美日一区二区| 久久久久久一区二区| 久久丁香四色| 国产精品一区毛片| 午夜亚洲一区| 欧美日韩在线二区| 国产成人精品亚洲日本在线观看| 久久福利在线| 国产精品一级| 久久国产三级精品| 日韩高清欧美激情| 亚洲日本在线观看视频| 一区二区亚洲精品| 欧美色图国产精品| se01亚洲视频 | 亚洲ab电影| 综合日韩在线| 日韩精品一区第一页| 香蕉精品999视频一区二区| 香蕉精品视频在线观看|