驗證碼開發有兩種方法:web
1.本身用代碼畫一個dom
2.調用ValidateCode.jar工具包ide
第一種方式:工具
建立一個動態web工程spa
編寫一個Servlet,在該Servlet內進行以下操做code
驗證碼開發步驟:對象
1.在內存中建立一個圖片對象blog
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
1 int width = 110; 2 int height = 25; 3 // 在內存中建立一個圖片對象 4 BufferedImage img = new BufferedImage(width, height, 5 BufferedImage.TYPE_INT_RGB);
2.建立一個畫筆圖片
1 //建立一個畫筆 2 Graphics g=img.getGraphics();
3.給圖片添加背景顏色內存
1 //給圖片添加背景色 2 g.setColor(Color.PINK); 3 g.fillRect(1, 1, width-2, height-2);
4.給圖片邊框一個顏色
1 //給邊框一個顏色 2 g.setColor(Color.RED); 3 g.drawRect(0, 0, width-1, height-1);
5.設置文本樣式
1 //設置文本樣式 2 g.setColor(Color.BLUE); 3 g.setFont(new Font("宋體", Font.BOLD|Font.ITALIC, 13));
6.添加文本內容
1 //添加文本內容 2 Random r = new Random(); 3 int position =20; 4 for(int i=0;i<4;i++){ 5 g.drawString(r.nextInt(9)+" ", position, 20); 6 position+=20; 7 }
7.繪製干擾線
1 //繪製干擾線(循環九條幹擾線) 2 for(int i=0;i<9;i++){ 3 g.drawLine(r.nextInt(width), r.nextInt(height), r.nextInt(width), r.nextInt(height)); 4 }
8.將圖片以流的方式輸出客戶端
1 //將圖片以流的方式輸出客戶端 2 ImageIO.write(img, "jpg", response.getOutputStream());
第二種方式:
直接使用工具包便可。
1 //width:寬度 2 //height:高度 3 //codeCount:驗證碼個數 4 //lineCount:干擾線數量 5 ValidateCode vc = new ValidateCode(110, 25, 4, 9); 6 vc.write(response.getOutputStream());