下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 有关试用期工作总结(集合15篇)
- 授权独家代理合同3篇
- 沈阳市康平县2025届三年级数学下学期期中学业质量监测试题(含答案)
- 2026年销售员内部竞争分析报告
- 2026年创建卫生村工作实施方案及措施
- 2026年太平洋保险住院理赔流程及手续
- 2026年儿童节手工活动策划案例
- 2026年健全职业保障体系调研报告
- 池州市贵池区2025届三上数学阶段学业水平测试试题(含答案解析)
- 2026年社会调研活动方案设计
- 2026云南黄金矿业集团股份有限公司第一次招聘工作人员13人备考题库及一套参考答案详解
- 创业管理(上海财经大学)智慧树知到期末考试答案章节答案2024年上海财经大学
- 2024年广东省广州市市中考化学试卷真题(含答案)
- 高中物理必修二《动能和动能定理》典型题练习(含答案)
- 六西格玛绿带项目报告书
- JT-GQB-015-1998公路桥涵标准钢筋混凝土圆管涵洞
- 艺术中国智慧树知到期末考试答案2024年
- 北京市气膜体育场馆隐患自查清单(2024年度)
- 矿粉塑性指数(自动计算)
- 墨西哥与中美洲古代文明:考古与文化史
- 十字路口交通灯信号PLC控制系统设计与调试
评论
0/150
提交评论