



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、jsp验证码代码在开发中验证码是比较常用到有效防止这种问题对某一个特定注册用户用特定程序破解方式进行不断的登陆尝试的方式。此演示程序包括三个文件:code.jsp<%/ 在内存中创建图象int width=60, height=20;BufferedImage image = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);/ 获取图形上下文Graphics g = image.getGraphics();/ 设定背景色g.setColor(new Color(0xDCDCDC);g.fillRect(0, 0, w
2、idth, height);/画边框g.setColor(Color.black);g.drawRect(0,0,width-1,height-1);/ 随机产生的认证码(4位数字)String rand =""+ (Math.random()*10000);rand = rand.substring(0,rand.indexOf(".");switch(rand.length()case 1: rand = "000"+rand; break;case 2: rand = "00"+rand; break;cas
3、e 3: rand = "0"+rand; break;default: rand = rand.substring(0,4); break;/ 将认证码存入SESSIONsession.setAttribute("rand",rand);/ 将认证码显示到图象中g.setColor(Color.black);Integer tempNumber = new Integer(rand);String numberStr = tempNumber.toString();g.setFont(new Font("Atlantic Inline&quo
4、t;,Font.PLAIN,18);String Str = numberStr.substring(0,1);g.drawString(Str,8,17);Str = numberStr.substring(1,2);g.drawString(Str,20,15);Str = numberStr.substring(2,3);g.drawString(Str,35,18);Str = numberStr.substring(3,4);g.drawString(Str,45,15);/ 随机产生88个干扰点,使图象中的认证码不易被其它程序探测到 Random random = new Rand
5、om();for (int i=0;i<20;i+)int x = random.nextInt(width);int y = random.nextInt(height);g.drawOval(x,y,0,0);/ 图象生效g.dispose();/ 输出图象到页面ImageIO.write(image, "JPEG", response.getOutputStream(); /在页面上调用 <img src="/yourPath/checkNum.jsp" />%>login.jsp程序代码 = <% page cont
6、entType="text/html;charset=gb2312" %><!DOCTYPE HTML PUBLIC "-/W3C/DTD HTML 4.01 Transitional/EN"> <html><head><title>认证码输入页面</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <META HTTP-EQUIV=
7、"Pragma" CONTENT="no-cache"><META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"><META HTTP-EQUIV="Expires" CONTENT="0"></head><body><form method=post action="check.jsp"><table><tr><t
8、d align=left>系统产生的认证码:</td><td><img border=0 src="code.jsp"></td></tr><tr><td align=left>输入上面的认证码:</td><td><input type=text name=rand maxlength=4 value=""></td></tr><tr><td colspan=2 align=center&
9、gt;<input type=submit value="提交检测"></td> </tr></form></body></html>check.jsp程序代码 =<html><head><title>认证码验证页面</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <META HTTP-EQUIV
10、="Pragma" CONTENT="no-cache"><META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"><META HTTP-EQUIV="Expires" CONTENT="0"></head><body><%String rand = (String)session.getAttribute("rand"); String input = request.getParameter("rand"); %>系统产生的认证码为: <%= rand %><br>您输入的认证码为: <%= input %><br><br><%if (rand
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房子承让合同范本
- 个人与广告合同范本
- 幕墙配件采购合同范本
- 工地管网维护合同范本
- 供水水泵采购合同范本
- 四川护理职业学院《中外文学经典导读》2023-2024学年第二学期期末试卷
- 山东菏泽一中2025年高三4月适应性测试一模英语试题含解析
- 吉林省长春市教研室2025年初三二模物理试题(详细答案版)含解析
- 2025届河南省邓州市花洲实验高级中学高三第一次段考英语试题试卷含解析
- 2025届四川省泸州泸县初三下学期一轮模拟物理试题试卷含解析
- 隔离与防护措施的正确应用
- 高血压问卷设计(知信行模式)
- 职业病危害告知书
- TRIZ理论――创新方法课件
- CORN术中获得性压力性损伤风险评估量表评定细则解读
- 中国大唐集团公司以热率为核心能耗管理指导意见
- (1.3)-灾害护理学第二章灾害应急体系
- 客户ABC分类管理
- GB/T 12755-2008建筑用压型钢板
- GB 8372-2001牙膏
- GA/T 882-2014讯问同步录音录像系统技术要求
评论
0/150
提交评论