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

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

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

    神秘的 J2ee 殿堂

    ·古之學者必有師·做學者亦要做師者·FIGHTING·

    servlet圖片驗證碼

    /**
     * 說明:生成驗證碼servlet
     * 編寫者:LiuYong
     * 日期:2008 8.7
     * 使用時直接把servlet訪問路徑傳給src就好了,如果要重新產生就把img的onclick加個document.getElementById("imgId").src="<%=request.getContextPath() %>/servlet/RandomCodeServlet";就ok,不過火狐里面不行。呵呵
     
    */
    package com.hunau.liuyong;

    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics2D;
    import java.awt.image.BufferedImage;
    import java.io.IOException;
    import java.util.Random;

    import javax.imageio.ImageIO;
    import javax.servlet.ServletException;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;

    /**
     * <p>
     * Title:生成驗證碼
     * <p>
     * Description:在servlet中生成驗證碼
     * </p>
     * 
     
    */
    public class RandomCodeServlet extends HttpServlet {

        
    // 高度
        private int width = 90;

        
    // 寬度
        private int height = 20;

        
    protected void service(HttpServletRequest req, HttpServletResponse resp)
                
    throws ServletException, java.io.IOException {
            BufferedImage buffImg 
    = new BufferedImage(width, height,
                    BufferedImage.TYPE_INT_RGB);
            Graphics2D g 
    = buffImg.createGraphics();
            Random random 
    = new Random();
            g.setColor(Color.WHITE);
            g.fillRect(
    00, width, height);
            
    // 設置字體
            Font font = new Font("Times New Roman", Font.BOLD, 20);
            g.setFont(font);
            
    // 畫邊框
            g.setColor(Color.GRAY);
            g.drawRect(
    00, width - 1, height - 1);

            g.setColor(Color.GRAY);
            
    // 隨機產生干擾線
            for (int i = 0; i < 50; i++) {
                
    int x = random.nextInt(width);
                
    int y = random.nextInt(height);
                
    int x1 = random.nextInt(2);
                
    int y1 = random.nextInt(2);
                g.drawLine(x, y, x 
    + x1, y + y1);
            }
            
    // 數字字母集合
            char[] numbersAndLettersStore = ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
                    .toCharArray();
            String randomCode 
    = null;
            
    int red = 0, green = 0, blue = 0;
            
    for (int i = 0; i < 4; i++) {
                red 
    = random.nextInt(255);
                green 
    = random.nextInt(255);
                blue 
    = random.nextInt(255);
                g.setColor(
    new Color(red, green, blue));
                String tem 
    = String.valueOf(numbersAndLettersStore[random
                        .nextInt(
    62)]);
                randomCode 
    += tem;
                g.drawString(tem, 
    15 * i + 1617);
            }
            
    // 驗證碼保存到Session范圍
            HttpSession session = req.getSession();
            session.setAttribute(
    "code", randomCode.toString());
            
    // 禁止緩存
            resp.setHeader("Prama""no-cache");
            resp.setHeader(
    "Coche-Control""no-cache");
            resp.setDateHeader(
    "Expires"0);
            resp.setContentType(
    "image/jpeg");
            
    // 將圖像輸出到
            ServletOutputStream sos = resp.getOutputStream();
            ImageIO.write(buffImg, 
    "jpeg", sos);
            sos.close();
        }

    }

    posted on 2008-08-07 15:24 月芽兒 閱讀(1116) 評論(0)  編輯  收藏 所屬分類: J2EE學習心得

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    相冊

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久A级毛片免费观看| 91视频免费观看| 亚洲三级高清免费| 亚洲国产精品乱码在线观看97| 两个人看www免费视频| 国产亚洲视频在线播放| 全部免费毛片在线| 国产综合成人亚洲区| 免费无码又爽又刺激毛片| 亚洲AV永久无码精品一福利| 成人免费视频国产| 一级a性色生活片久久无少妇一级婬片免费放 | 黄页网站在线免费观看| 免费a级毛片在线观看| 新最免费影视大全在线播放| 亚洲毛片网址在线观看中文字幕| 成人片黄网站色大片免费观看cn| 思思re热免费精品视频66| 久久夜色精品国产噜噜亚洲a| 香蕉视频在线免费看| 亚洲成AV人片一区二区| 国产亚洲漂亮白嫩美女在线| 免费人成在线观看网站视频| jizz免费观看| 国产精品jizz在线观看免费| 永久免费无码日韩视频| 久久久久久a亚洲欧洲AV| 九九免费精品视频在这里| 亚洲日韩欧洲乱码AV夜夜摸| 日本xxxx色视频在线观看免费| 亚洲中文字幕无码日韩| 日韩内射激情视频在线播放免费| 亚洲国产中文在线视频| 最近最好最新2019中文字幕免费 | 亚洲a∨国产av综合av下载| 亚洲国产一级在线观看 | 久久国产精品2020免费m3u8| 亚洲综合久久夜AV | 在线美女免费观看网站h| 亚洲国产成人手机在线观看| 亚洲日韩中文无码久久|