`

jsp 实现验证码

    博客分类:
  • JSP
阅读更多

 

一.新建image.jsp文件

<%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%>

<%@ page import="java.io.OutputStream"%>

<%!Color getRandColor(int fc, int bc) {

Random random = new Random();

if (fc > 255)

fc = 255;

if (bc > 255)

bc = 255;

int r = fc + random.nextInt(bc - fc);

int g = fc + random.nextInt(bc - fc);

int b = fc + random.nextInt(bc - fc);

return new Color(r, g, b);

}%>

<%

try {

response.setHeader("Pragma", "No-cache");

response.setHeader("Cache-Control", "no-cache");

response.setDateHeader("Expires", 0);

int width = 60, height = 20;

BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

OutputStream os = response.getOutputStream();

Graphics g = image.getGraphics();

Random random = new Random();

g.setColor(getRandColor(200, 250));

g.fillRect(0, 0, width, height);

 

g.setFont(new Font("Times New Roman", Font.PLAIN, 18));

g.setColor(getRandColor(160, 200));

for (int i = 0; i < 155; i++) {

int x = random.nextInt(width);

int y = random.nextInt(height);

int xl = random.nextInt(12);

int yl = random.nextInt(12);

g.drawLine(x, y, x + xl, y + yl);

}

String sRand = "";

for (int i = 0; i < 4; i++) {

String rand = String.valueOf(random.nextInt(10));

sRand += rand;

g.setColor(new Color(20 + random.nextInt(110), 20 + random.nextInt(110), 20 + random.nextInt(110)));

g.drawString(rand, 13 * i + 6, 16);

}

System.out.println(sRand);

session.setAttribute("rand", sRand);

g.dispose();

 

ImageIO.write(image, "JPEG", os);

os.flush();

os.close();

os = null;

response.flushBuffer();

out.clear();

out = pageContext.pushBody();

} catch (IllegalStateException e) {

System.out.println(e.getMessage());

e.printStackTrace();

}

%>


 

 

二.在需要引入的地方

 

<tr style="height: 22px">

<td>

<font color="#FFFFFF">验证码:</font>

</td>

<td  width="200">

<input id="codeInputFront"  class="inputText" type="text" style="width: 50px" />

<img id="LoginImgVerifyCode" style="float: left; src="jsp/frontstage/index/image.jsp" />

<a href="javascript:changeVerifyCode()">刷新</a>

</td>

</tr>

 

注意:<image>标签中要写相对路径。但是一定是写全,基于WebRoot 目录下方

 

分享到:
评论

相关推荐

    JSP实现验证码数字图片

    **JSP实现验证码数字图片详解** 验证码是一种常用的安全机制,用于防止自动机器人或者恶意脚本进行非法操作,如批量注册、频繁提交等。在Web开发中,JSP(JavaServer Pages)可以用来创建动态验证码图片。本文将...

    jsp实现验证码

    在JavaWeb开发中,验证码(CAPTCHA)是一个重要的安全组件,用于防止自动...以上就是JSP实现验证码及其刷新功能的主要步骤和知识点。在实际开发中,还需要考虑到用户体验和网页性能,合理设计验证码的样式和刷新机制。

    servlet+jsp实现验证码demo

    servlet+jsp实现验证码 具体步骤: 生成图片所要实现的类 1、定义BufferedImage对象 2、获得Graphics对象 3、使用Random生成随机验证码信息 4、使用Graphics绘制图片 5、记录验证信息到session 6、使用ImageIO生成...

    JSP实现的验证码, 验证码

    这里我们将深入探讨JSP实现验证码的原理、步骤以及涉及到的相关知识点。 验证码的基本流程包括生成随机字符串、显示图像、验证用户输入的字符串是否与生成的字符串匹配。下面将分别介绍这些环节: 1. **生成随机...

    jsp实现验证码技术实例

    jsp实现验证码技术实例 jsp实现验证码技术实例

    jsp实现验证码JSP彩色验证码的实现

    经典JSP生成验证码经典JSP生成验证码经典JSP生成验证码经典JSP生成验证码经典JSP生成验证码经典JSP生成验证码经典JSP生成验证码

    JSP实现验证码功能.zip

    本项目"JSP实现验证码功能"正是关注于如何在JSP中集成验证码功能,以提高网站的安全性。 验证码的基本原理是生成一段随机的、难以被机器识别的文字或图像,用户在访问某些关键页面时需要输入显示的验证码,系统会...

    JSP实现验证码生成

    总的来说,通过Java和JSP实现验证码生成,涉及到的主要知识点有:随机数生成、HttpSession管理、图形渲染以及表单提交后的服务器端验证。理解并实践这个过程,有助于提升你对Web开发中安全机制的理解。

    java 实现验证码(servlet+jsp)

    以上就是使用Java Servlet和JSP实现验证码的基本步骤。在实际应用中,还需要考虑一些优化措施,如防止重复请求同一验证码、设置验证码过期时间等。这个过程可以通过解压名为`verifyCodeDemo`的压缩包文件来查看具体...

    jsp实现 验证码

    总结来说,通过JSP实现验证码涉及到Java后端的字符串生成和图片绘制,以及前端的显示和用户交互。这种机制在防止自动化攻击的同时,也为用户提供了一个直观的安全保障。在实际开发中,可以根据具体需求调整验证码的...

    jsp实现注册页面验证码验证代码

    6. JSP 的应用:使用 JSP 生成验证码图片,实现验证码的验证机制。 * 使用 JSP 生成验证码图片,包括生成验证码图片和将验证码存入 SESSION。 * 使用 JSP 实现验证码的验证机制,检测用户输入的验证码是否正确。 ...

    JSP代码实现验证码功能

    ### JSP代码实现验证码功能详解 #### 一、概述 本文档详细介绍了如何使用Java Server Pages (JSP)技术来实现一个简单的验证码功能。验证码在Web应用中是一种常见的安全措施,用于防止自动化软件进行恶意操作,如...

    jsp验证码实现源代码

    jsp验证码实现源代码,用jsp做注册验证码

    jsp实现验证码的示例

    总的来说,JSP实现的验证码示例是一个实用的教程,它帮助开发者理解如何结合Java和Web技术来增强网站的安全性。通过学习和理解这个示例,你可以为自己的项目添加类似的验证码功能,保护你的用户免受自动化攻击。

    JSP页面实现验证码功能

    在Web开发中,验证码是一种...总结来说,使用JSP实现验证码功能主要涉及随机字符串生成、图像绘制、Session管理以及表单处理。通过以上步骤,我们可以创建一个简单且实用的验证码系统,为Web应用提供基本的安全防护。

    jsp 登陆页面验证码的实现

    以上就是基于JSP和Servlet实现简单验证码的基本流程。实际应用中,为了增强安全性,还可以考虑以下几点: - 使用更复杂的图像扭曲算法,增加自动化识别的难度。 - 设置验证码过期时间,防止长时间未使用的验证码被...

    jsp验证码源码下载

    **验证码技术详解与JSP实现** ...它通过显示一段人类可以理解但...以上就是关于JSP实现验证码的核心知识点。实际开发中,可以根据项目需求调整验证码的复杂度和样式,确保其既能满足安全需求,又能提供良好的用户体验。

    jsp实现图形验证码

    jsp实现图形验证码

    JSP 数字验证码 实现方法

    在Java服务器页面(JSP)中实现数字验证码,可以确保用户是真实的个体而非程序。以下是一个简单的JSP数字验证码的实现方法: 首先,我们来看一下JSP的基本结构。`@%&gt;` 和 `是JSP中的脚本元素,它们分别用于执行Java...

Global site tag (gtag.js) - Google Analytics