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

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

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

    wangflood

    精心維護一個技術blog,為了工作,也是愛好。

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      14 Posts :: 19 Stories :: 8 Comments :: 0 Trackbacks
            最近在做一個面試題,斷斷續續地忙了九天。終于趕在圣誕節前,這個美好的晚上完成。不僅把SSH架構復習一遍,displaytag也應用上了。
    完成這個項目,產生了幾個衍生品。其中驗證碼就是其中一個。

    一般大登錄和注冊頁面上存在驗證,以前覺得很神秘。可能是接觸得多,高度就高了,再看驗證碼,其實就是response一個contentType="image/jpeg"類型的html而已。
    下面是我和awt方式生成這張圖片的源碼:
    import java.awt.BorderLayout;
    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Frame;
    import java.awt.Graphics;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.awt.image.BufferedImage;
    import java.util.Random;
    import java.util.concurrent.TimeUnit;

    public class Test extends Frame {

        
    public Test() {

            Button b 
    = new Button("下一個");

            setBounds(
    300300400400);
            
    this.addWindowListener(new WindowAdapter() {
                @Override
                
    public void windowClosing(WindowEvent e) {
                    System.exit(
    0);
                }

            }
    );
            b.addActionListener(
    new ActionListener() {

                @Override
                
    public void actionPerformed(ActionEvent e) {
                    repaint();

                }

            }
    );
            repaint();
            
    this.setLayout(new BorderLayout());
            
    this.add(b, BorderLayout.SOUTH);
            
    this.setVisible(true);
        }


        @Override
        
    public void paint(Graphics headG) {
            
    int width = 400, height = 400;
            BufferedImage image 
    = new BufferedImage(width, height,
                    BufferedImage.TYPE_INT_RGB);
            Graphics g 
    = image.getGraphics();
            Random random 
    = new Random();
            g.setColor(getRandColor(
    200250));
            g.fillRect(
    00, width, height);
            g.setFont(
    new Font("Arial", Font.BOLD, 120));
            g.setColor(getRandColor(
    160200));

            
    for (int i = 0; i < 550; 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);
            }

            String sRand 
    = "";
            
    for (int i = 0; i < 4; i++{
                String rand 
    = String.valueOf(random.nextInt(10));
                sRand 
    += rand;
                g.setColor(
    new Color(000));
                g.drawString(rand, 
    110 * i + 3250);
            }


            headG.drawImage(image, 
    00this);
        }


        
    public static void main(String[] args) {

            
    new Test();

        }


        
    static 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);
        }


    }


    運行情況(截圖):

    posted on 2010-12-25 23:10 wangflood 閱讀(169) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: 日本免费人成黄页网观看视频| 成人影片麻豆国产影片免费观看| 国产美女亚洲精品久久久综合| a高清免费毛片久久| 国产亚洲av片在线观看播放| 国产成年无码久久久免费| 久久精品国产亚洲AV果冻传媒| 99re6免费视频| 亚洲国产精品一区二区三区在线观看| 扒开双腿猛进入爽爽免费视频 | 亚洲av午夜精品一区二区三区 | 噼里啪啦免费观看高清动漫4| 波多野结衣亚洲一级| 免费观看午夜在线欧差毛片| 久久精品国产亚洲av天美18| 亚洲性在线看高清h片| 18禁黄网站禁片免费观看不卡| 亚洲乱色熟女一区二区三区蜜臀| 亚洲精品无码久久久影院相关影片 | 亚洲色欲色欲www| 亚洲色无码专区在线观看| 免费中文熟妇在线影片 | 99精品视频在线观看免费播放| 国产亚洲视频在线| 亚洲婷婷天堂在线综合| 亚洲午夜久久久久久久久久| 波多野结衣久久高清免费| 99re热精品视频国产免费| 久久国产福利免费| 亚洲大尺度无码无码专线一区| 亚洲伊人tv综合网色| 国产精品亚洲玖玖玖在线观看| 成人一a毛片免费视频| 亚洲视频在线观看免费| 成在线人视频免费视频| 亚洲a∨国产av综合av下载| 亚洲一区免费在线观看| 亚洲小视频在线观看| 亚洲色中文字幕无码AV| 国产精品亚洲美女久久久| 免费v片在线观看无遮挡|