jsp验证码代码_第1页
jsp验证码代码_第2页
jsp验证码代码_第3页
jsp验证码代码_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论