image.jsp
<%@ page contentType="image/jpeg"%>
<%@ page import="java.awt.*"%>
<%@ page import="java.awt.image.*"%>
<%@ page import="java.util.*"%>
<%@ page import="javax.imageio.*"%>
<%
//在内存中创建图象
int iWidth=130,iHeight=18;
BufferedImage image=new BufferedImage(iWidth,iHeight,BufferedImage.TYPE_INT_RGB);
//获取图形上下文
Graphics g=image.getGraphics();
//设定背景色
g.setColor(Color.white);
g.fillRect(0,0,iWidth,iHeight);
//画边框
g.setColor(Color.black);
g.drawRect(0,0,iWidth-1,iHeight-1);
//取随机产生的认证码(4位数字)
String rand=request.getParameter("Rand");
rand=rand.substring(0,rand.indexOf("."));
switch(rand.length())
{
case 1:rand="000"+rand;break;
case 2:rand="00"+rand;break;
case 3:rand="0"+rand;break;
default:rand=rand.substring(0,4);break;
}
//将认证码存入SESSION
session.setAttribute("Rand",rand);
//将认证码显示到图象中
g.setColor(Color.black);
g.setFont(new Font("Times New Roman",Font.PLAIN,18));
g.drawString(rand,10,15);
//随机产生88个干扰点,使图象中的认证码不易被其它程序探测到
Random random=new Random();
for(int iIndex=0;iIndex<88;iIndex++)
{
int x=random.nextInt(iWidth);
int y=random.nextInt(iHeight);
g.drawLine(x,y,x,y);
}
//图象生效
g.dispose();
//输出图象到页面
ImageIO.write(image,"JPEG",response.getOutputStream());
%>
输出时应用验证码
<script>document.write("<img border=0 src='/image.jsp?Rand="+Math.random()*10000+"'>");</script><br>
输认证码: <input name="Rand" maxlength=4 size="10"><br>
登录认证:
String Rand=request.getParameter("Rand");
String strRand=(String)session.getAttribute("Rand");
if(!strRand.equals(Rand))
{
//未通过;
}
分享到:
相关推荐
这里我们将深入探讨JSP实现验证码的原理、步骤以及涉及到的相关知识点。 验证码的基本流程包括生成随机字符串、显示图像、验证用户输入的字符串是否与生成的字符串匹配。下面将分别介绍这些环节: 1. **生成随机...
**JSP实现验证码数字图片详解** 验证码是一种常用的安全机制,用于防止自动机器人或者恶意脚本进行非法操作,如批量注册、频繁提交等。在Web开发中,JSP(JavaServer Pages)可以用来创建动态验证码图片。本文将...
总的来说,这个JSP数字验证码的实现是一个基本的示例,它展示了如何利用Java图形库在服务器端生成和输出验证码图像。在实际项目中,可能需要根据具体需求进行优化和扩展,例如增加字母、特殊字符的组合,或者使用更...
在本主题“利用jsp生成图片验证码”中,我们将探讨如何在JavaServer Pages (JSP)上下文中创建一个简单的图片验证码,而无需使用Servlet。首先,我们要明白JSP是Java Web开发中的视图层技术,它允许我们在HTML页面中...
以上就是使用Java Servlet和JSP实现验证码的基本步骤。在实际应用中,还需要考虑一些优化措施,如防止重复请求同一验证码、设置验证码过期时间等。这个过程可以通过解压名为`verifyCodeDemo`的压缩包文件来查看具体...
在这个【分享】JSP语音验证码接口demo中,我们聚焦于如何利用JSP技术实现一个高效、可靠的语音验证码功能。 1. **JSP基础**: - **基本原理**:JSP是一种服务器端脚本语言,它将HTML、CSS和JavaScript等前端元素与...
总的来说,通过Java和JSP实现验证码生成,涉及到的主要知识点有:随机数生成、HttpSession管理、图形渲染以及表单提交后的服务器端验证。理解并实践这个过程,有助于提升你对Web开发中安全机制的理解。
以上就是基于JSP和Servlet实现简单验证码的基本流程。实际应用中,为了增强安全性,还可以考虑以下几点: - 使用更复杂的图像扭曲算法,增加自动化识别的难度。 - 设置验证码过期时间,防止长时间未使用的验证码被...
本示例将介绍如何利用jsp和net.js来实现验证码验证的功能,无需编写复杂的生成代码。 首先,让我们了解一下net.js。Net.js是一个JavaScript库,它允许在Node.js环境中创建网络服务器,提供了TCP、UDP以及HTTP协议的...
在JSP(JavaServer Pages)中实现验证码,我们可以利用Java的图形库生成随机的图像验证码,然后在客户端显示并接收用户输入进行验证。以下将详细介绍JSP验证码的实现过程。 1. **环境准备**: 在开始之前,确保你...
在这个实例中,我们将利用JSP创建一个用户登录页面,同时实现验证码验证功能,以增加安全性。 验证码验证通常用于防止自动化程序(如机器人)进行恶意操作,例如重复登录尝试或垃圾邮件发送。验证码通过显示一组...
**在JSP中实现验证码详解** 验证码是一种常用的安全机制,用于防止自动机器人或者恶意脚本进行非法操作,如批量注册、频繁提交等。在Web开发中,尤其是在Java Web环境中,我们常常利用Java Servlet和JSP(Java...
在JSP(JavaServer Pages)环境中,我们可以利用Java的强大功能来实现这一目标。首先,我们需要了解JSP的基本结构和生命周期,它是Java与HTML结合的一种动态网页技术,可以嵌入Java代码来处理服务器端逻辑。 1. **...
在Java Web开发领域中,经常利用JSP(JavaServer Pages)与Servlet技术来实现验证码功能。本文将详细解析一个具体的JSP Servlet验证码实现案例。 #### 二、核心概念 1. **Servlet**:Servlet是一种基于Java的技术...
通过分析和学习这个文件,你可以更深入地理解如何在实际项目中应用JSP来实现验证码功能。 验证码技术还有许多进阶玩法,例如滑动验证码、点击验证码、拖动验证码等,这些都需要结合JavaScript和其他前端技术来实现...
用jsp页面的方式实现验证码的生成和获取
**验证码技术详解与JSP实现** ...它通过显示一段人类可以理解但...以上就是关于JSP实现验证码的核心知识点。实际开发中,可以根据项目需求调整验证码的复杂度和样式,确保其既能满足安全需求,又能提供良好的用户体验。
以上就是使用JSP生成验证码图片的基本原理和实现流程。在实际应用中,还可以结合其他安全措施,比如限制用户尝试次数、使用滑动验证等,进一步提高系统的安全性。同时,随着技术的发展,验证码的形式也在不断进化,...
在这个JSP彩色验证码源码中,我们将看到如何利用JSP生成随机字符串,然后将其转化为彩色图像显示在客户端。 验证码的生成主要包括以下几个步骤: 1. **生成随机字符串**:在JSP页面中,可以使用Java的`Random`类...