下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 风电场选址课件
- 房地产宣传课件
- 初中化学2026教资面试答辩历年真题题库及答案
- 顺产护理查房课件
- 护理部副主任工作述职
- 心律失常病人的护理查房
- 脑卒中平衡障碍康复训练
- 奋斗班会课课件
- 肥存在的问题课件
- 防踩踏中班课件
- 2026公安机关人民警察(高级)执法资格等级考试历年参考题库含答案详解
- 宁夏回族自治区2026年中考语文试卷【含答案】
- 骨质疏松症的防治专题知识讲座培训课件
- 3.10小学2026秋科学苏教版(新教材)五年级上册第三单元第10课《摩擦力》课件(含AI赋能)
- 2026年高校辅导员招聘思想政治教育试卷解析
- 中国世界文化遗产资料【十篇】
- 资产评估业务报备管理制度
- 2026年品牌故事讲述培训课件
- 《电动自行车停车场(棚)防火技术导则》
- MOCO品牌战略规划报告:驱动二次增长的路径与实践
- (正式版)DB15∕T 389-2021 《内蒙古自治区造林技术规程》
评论
0/150
提交评论