<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    yxhxj2006

    常用鏈接

    統計

    最新評論

    用java實現驗證碼

    <%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
    <%!
    Color getRandColor(int fc,int bc){//給定范圍獲得隨機顏色
      Random random = new Random();
      if(fc>255) fc=255;
      if(bc>255) bc=255;
      int r=fc+random.nextInt(bc-fc);
      int g=fc+random.nextInt(bc-fc);
      int b=fc+random.nextInt(bc-fc);
      return new Color(r,g,b);
      }
    %>
    <%
    //設置頁面不緩存
    response.setHeader("Pragma","No-cache");
    response.setHeader("Cache-Control","no-cache");
    response.setDateHeader("Expires", 0);

    // 在內存中創建圖象
    int width=60, height=20;
    BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

    // 獲取圖形上下文
    Graphics g = image.getGraphics();

    //生成隨機類
    Random random = new Random();

    // 設定背景色
    g.setColor(getRandColor(200,250));
    g.fillRect(0, 0, width, height);

    //設定字體
    g.setFont(new Font("Times New Roman",Font.PLAIN,18));


    // 隨機產生155條干擾線,使圖象中的認證碼不易被其它程序探測到
    g.setColor(getRandColor(160,200));
    for (int i=0;i<155;i++)
    {
      int x = random.nextInt(width);
      int y = random.nextInt(height);
      int xl = random.nextInt(12);
      int yl = random.nextInt(12);
      g.drawLine(x,y,x+xl,y+yl);
    }

    // 取隨機產生的認證碼(4位數字)

    String codeList = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";

    String sRand="";


    for (int i=0;i<4;i++){
    int a=random.nextInt(codeList.length()-1);
      String rand=codeList.substring(a,a+1);
      sRand+=rand;
      // 將認證碼顯示到圖象中
      g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));//調用函數出來的顏色相同,可能是因為種子太接近,所以只能直接生成
      g.drawString(rand,13*i+6,16);
    }

    // 將認證碼存入SESSION
    session.setAttribute("rand",sRand);

    // 圖象生效
    g.dispose();

    // 輸出圖象到頁面
    ImageIO.write(image, "JPEG", response.getOutputStream());
    out.clear();
    out = pageContext.pushBody();


    %> 

    posted on 2012-11-14 23:34 奮斗成就男人 閱讀(192) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 青柠影视在线观看免费高清| 亚洲六月丁香婷婷综合| 疯狂做受xxxx高潮视频免费| 欧美好看的免费电影在线观看| 911精品国产亚洲日本美国韩国| 免费无码作爱视频| 水蜜桃亚洲一二三四在线| 永久免费AV无码网站国产| 亚洲国产成人片在线观看无码 | 亚洲国产区男人本色| 免费看国产成年无码AV片| 中文有码亚洲制服av片| 免费无码黄动漫在线观看| 亚洲AV无码XXX麻豆艾秋| 四虎永久在线精品免费观看地址 | 亚洲1区2区3区精华液| 国产做床爱无遮挡免费视频| 黄页网站在线视频免费| 亚洲91精品麻豆国产系列在线| 精品久久8x国产免费观看| youjizz亚洲| 日韩一级免费视频| 亚洲精品在线播放| 中文字幕不卡高清免费| 亚洲AV无码久久精品蜜桃| 五月婷婷在线免费观看| 亚洲AV无码成人精品区日韩| 免费看小12萝裸体视频国产| 国产真人无码作爱免费视频| 亚洲男女性高爱潮网站| 国产一级淫片a免费播放口之 | 日韩av无码久久精品免费| 亚洲伊人久久大香线蕉啊| 免费jjzz在线播放国产| 在线观看特色大片免费网站| 亚洲成A∨人片在线观看无码| 国产成人无码免费视频97 | 99xxoo视频在线永久免费观看| 亚洲精品第一国产综合野| 亚洲午夜激情视频| 丁香花免费高清视频完整版|