亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

JSP動態生成驗證碼存儲在session作用范圍內

2024-09-05 00:18:36
字體:
來源:轉載
供稿:網友

  小編一直認為能夠生成驗證代碼的人都是很厲害的人,直到今天,我很幸運地學會了生成動態驗證代碼的方法,其實這并不像我們想象的那么困難。所以,今天錯新技術頻道小編將和大家分享JSP動態生成驗證碼存儲在session.html" target="_blank">session作用范圍內的介紹,希望對你有所幫助!

(1)在登錄應用中,為防止惡意登錄,常常需要服務器動態生成驗證碼并存儲在session作用范圍中,最后以圖像形式返回給客戶端顯示

(2)下邊的代碼實現的功能:寫一個JSP頁,動態生成一個驗證碼,存儲在session作用范圍內,并以圖像形式返回給客戶端顯示。

另寫一個JSP頁面,引用此JSP頁面生成的驗證碼;

authen.jsp代碼如下:

<%@ page import="java.awt.*,java.awt.image.*,java.util.*,com.sun.image.codec.jpeg.*" %> <%! //根據提供的ab產生隨機的顏色變化范圍 Color getColor(int a,int b){ int n=b-a; Random rd=new Random(); int cr=a+rd.nextInt(n); int cg=a+rd.nextInt(n); int cb=a+rd.nextInt(n); return new Color(cr,cg,cb); } %> <% //下邊三行取消客戶端游覽器緩存驗證碼的功能 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(getColor(200,250)); g.fillRect(0, 0, width, height); g.setFont(new Font("Times New Roman",Font.BOLD,18)); g.setColor(getColor(160,200)); for (int i=0;i<160;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 number=String.valueOf(1000+random.nextInt(8999)); String name=request.getParameter("name"); session.setAttribute(name,number); g.setColor(getColor(20,130)); int x=(int)(width*0.2); int y=(int)(height*0.8); g.drawString(number,x,y); g.dispose(); JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(response.getOutputStream()); encoder.encode(image); out.close(); %>

再建一個test.jsp頁面 調用驗證碼:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>無標題文檔</title> </head> <body> <% //同樣實現取消客戶端緩存 response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); String name="loginCode"; %> 驗證碼:<img src="authen.jsp?name=<%=name%>" /> </body> </html>

(3)在上述的兩個頁面中都有取消客戶端緩存的功能,這是因為再有的游覽器中,比如使用的IE游覽器的游覽方式,

會先將圖片放在緩存中,當再次請求的時候會現在內存中查找是不是已經有了,有的話就不在請求,這使得在刷新驗

證碼的時候 失敗,所以要使游覽器不讀取緩存的圖片,就需要取消緩存;

(4)OK!到此結束!

  以上所有內容就是錯新技術頻道小編JSP動態生成驗證碼存儲在session作用范圍內的介紹,相信大家看了之后有了進一步的了解,也希望大家可以分配好時間進行學習。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
17婷婷久久www| 尤物九九久久国产精品的特点| 2019av中文字幕| 欧美在线播放视频| 日韩在线免费视频观看| 中文在线资源观看视频网站免费不卡| 国产成人精品在线视频| 色综合男人天堂| 成人av电影天堂| 久久久亚洲国产天美传媒修理工| 亚洲一区第一页| 欧美一区二区.| 国产深夜精品福利| 欧美成人精品影院| 亚洲免费av电影| 亚洲激情自拍图| 久久精品男人天堂| 8050国产精品久久久久久| 欧美性xxxx18| 国产午夜精品理论片a级探花| 国产91成人在在线播放| 国产在线视频一区| 欧美高清不卡在线| 久热爱精品视频线路一| 国产成人亚洲综合91精品| 欧美国产日韩视频| 欧美成人激情视频免费观看| 欧美猛交ⅹxxx乱大交视频| 久久精品国产96久久久香蕉| 欧美日韩免费在线| 欧美高清视频在线播放| 91亚洲精品视频| 日韩精品在线视频| 久久久精品免费| 精品国产31久久久久久| 日韩av在线免播放器| 欧美成人午夜剧场免费观看| 国产欧美一区二区三区视频| 国外成人在线视频| 97国产精品视频| www.xxxx精品| 国产日韩欧美在线播放| 日韩av在线直播| 日本精品免费观看| 日韩国产精品亚洲а∨天堂免| 亚洲精品久久久久久久久| 日韩国产精品一区| 国产精品久久久久久久久免费| 日韩在线观看电影| 日韩精品视频免费专区在线播放| 国产在线观看91精品一区| 91免费电影网站| 97视频com| 国产女同一区二区| 成人av在线天堂| 欧美野外wwwxxx| 国产免费一区二区三区在线能观看| 欧洲成人午夜免费大片| 91久久国产精品| 亚洲视频欧美视频| 成人中文字幕+乱码+中文字幕| 91亚洲一区精品| 中文字幕在线看视频国产欧美| 久久在线精品视频| 久久久精品国产一区二区| 日韩av免费观影| 91久久久在线| 久久免费高清视频| 亚洲天堂av在线免费| 亚洲人成电影网站色…| 国产91精品最新在线播放| 91精品91久久久久久| 一本久久综合亚洲鲁鲁| 欧美性猛交xxxx富婆弯腰| 97人洗澡人人免费公开视频碰碰碰| 成人免费自拍视频| 日韩av网站导航| 欧美在线视频播放| 久久久国产成人精品| 欧美理论片在线观看| 91av在线免费观看视频| 日韩在线免费观看视频| 91高清视频免费| 色偷偷88888欧美精品久久久| 国产综合视频在线观看| 日韩激情视频在线播放| 欧美视频一区二区三区…| 日韩精品视频在线| 国产精品视频内| 成人网在线免费看| 成人夜晚看av| 欧美久久精品午夜青青大伊人| 国产精品精品视频一区二区三区| 欧美激情久久久久久| 久久免费成人精品视频| 国产免费一区二区三区在线观看| 精品久久久久久国产91| 亚洲成人精品视频| 久久久久国产一区二区三区| 成人免费看黄网站| 亚洲久久久久久久久久久| 国产精品免费电影| 日韩欧美成人免费视频| 国产精品一区专区欧美日韩| 欧美肥老妇视频| 日韩欧美第一页| 欧美日韩精品在线播放| 久久亚洲精品成人| 久久91亚洲人成电影网站| 夜夜嗨av色综合久久久综合网| 亚洲午夜未删减在线观看| 欧美另类第一页| 精品亚洲国产视频| 国产成人精品免高潮费视频| 国产精品偷伦免费视频观看的| 久久九九有精品国产23| 欧美电影免费播放| 久久综合电影一区| 亚洲夜晚福利在线观看| 久久精品国产96久久久香蕉| 国产成人精品久久久| 日韩在线高清视频| 欧美怡春院一区二区三区| 久久人人爽国产| 亚洲国产欧美自拍| 欧美裸体视频网站| 日韩av影视综合网| 欧美乱大交做爰xxxⅹ性3| 亚洲尤物视频网| 久久精品国产电影| 久久天天躁夜夜躁狠狠躁2022| 97精品国产97久久久久久免费| 日韩在线免费观看视频| 欧美高清不卡在线| 国产精品视频久久久久| 奇米影视亚洲狠狠色| 久久精品91久久香蕉加勒比| 精品亚洲一区二区三区四区五区| 最近2019年日本中文免费字幕| 久久久人成影片一区二区三区观看| 欧美黄色www| 国产精品久久久av久久久| 国产主播喷水一区二区| 欧美另类在线播放| 日韩成人av网| 亚洲成人xxx| 在线观看亚洲视频| 欧美中文字幕在线视频| 亚洲午夜色婷婷在线| 日韩高清av一区二区三区| 色婷婷久久av| 国产亚洲精品久久| 日韩欧美在线看| 欧美视频13p| 欧美一性一乱一交一视频| 国产在线视频2019最新视频| 91免费电影网站| 91亚洲永久免费精品| 亚洲精品v天堂中文字幕| 欧美激情精品久久久久久大尺度| 成人欧美一区二区三区黑人孕妇| 在线播放国产精品| www.日韩视频| 青草青草久热精品视频在线网站|