-
public void doGet(HttpServletRequest request,HttpServletResponse respone){ //繪制一個長68,寬22的矩形 BufferedImage bi=new BufferedImage(68, 22, BufferedImage.TYPE_INT_RGB); //建立一個緩沖區(qū)存放圖片,三個參數(shù)分別為 長,寬,顏色類型。 Graphics g=bi.getGraphics(); Color c=new Color(200, 150, 255); g.setColor(c);//設(shè)置圖形顏色 g.fillRect(0, 0, 68, 22);//在坐標0,0位置繪制框 char[] ch="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray(); Random r=new Random(); int len=ch.length,index; StringBuffer sb=new StringBuffer(); for(int i=0;i<4;i++){ index=r.nextInt(len); g.setColor(new Color(r.nextInt(88), r.nextInt(188), r.nextInt(255)));//設(shè)置字符顏色 g.drawString(ch[index]+"", (i*15)+3, 18);//將字符繪制到圖片上;(i*15)+3表示字符大小為15,間隔為3;高度為18 sb.append(ch[index]);//保存字符 } request.getSession().setAttribute("picCode", sb.toString());//將字符保存到session中 try { ImageIO.write(bi, "JPG", respone.getOutputStream());//進行輸出 } catch (IOException e) { e.printStackTrace(); } }查看全部
-
生成圖片需要的類查看全部
-
使用Servlet實現(xiàn)驗證碼制作 網(wǎng)頁顯示驗證碼: <input type="text" id="verifyCode" name="verifyCode" size="6" /> <img alt="驗證碼" src="<%=request.getContextPath()%>/servlet/ImageServlet" /> 運用Servlet隨機生成圖片,用到的類: 1. BufferedImage圖像數(shù)據(jù)緩沖區(qū) 2. Graphics繪制圖片 3. Color獲取顏色 4. Random生成隨機數(shù) 5. ImageIO輸出圖片 ImageServlet類 1. 定義BufferedImage對象 2. 獲取Graphics對象 3. Random隨機生成驗證碼信息 4. 使用Graphics繪制圖片 5. 驗證碼信息放入StringBuffer緩沖區(qū),再傳入Session中 6. 使用ImageIO輸出圖片 CheckServlet類//校驗驗證碼是否正確 1. 獲取頁面提交的驗證碼 2. 獲取Session中的驗證碼 3. 信息校驗 4. 返回結(jié)果 使用servlet實現(xiàn)驗證碼流程(如下圖)查看全部
-
驗證碼定義:驗證碼是一種區(qū)分用戶是計算機還是人的公共自動程序 作用:可以防止惡意破解密碼,刷票、論壇灌水,有效防止某個黑客對某一個特定注冊用戶用特定程序暴力破解方式進行不斷的登錄嘗試查看全部
-
生成圖片需要的類查看全部
-
兩個實現(xiàn)驗證碼的開源組件查看全部
-
Kaptcha相加在session中查看全部
-
加減法的驗證碼實現(xiàn)步驟查看全部
-
Kaptcha加邊框查看全部
-
Kaptcha組件實現(xiàn)驗證碼查看全部
-
開源組件實現(xiàn)驗證碼查看全部
-
實現(xiàn)步驟查看全部
-
生出驗證碼圖標需要的類查看全部
-
驗證碼的意義查看全部
-
驗證碼的實現(xiàn)流程圖,關(guān)鍵有兩個: 1:如何控制生成驗證碼——這是最為關(guān)鍵的一步,這一步是整個驗證碼豐富與否,好玩與否,復(fù)雜與否的關(guān)鍵,也在組件發(fā)揮作用的地方。 2:驗證驗證碼——這一步有一定的通用性,就是拿到用戶的輸入和我們放置在回話中的待驗證結(jié)果相比較查看全部
舉報
0/150
提交
取消