JSP页面验证码生成

原创 2004年12月29日 16:31:00

<%@ page contentType="image/jpeg" import="java.awt.*,
java.awt.image.*,java.util.*,javax.imageio.*" %>
<%
// 在内存中创建图象
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, width, height);

//画边框
g.setColor(Color.black);
g.drawRect(0,0,width-1,height-1);

// 取随机产生的认证码(4位数字)
//String rand = request.getParameter("rand");
Random ran = new Random();
String rand = String.valueOf(ran.nextInt(9999));

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("Atlantic Inline",Font.PLAIN,18));
String Str = rand.substring(0,1);
g.drawString(Str,8,17);

Str = rand.substring(1,2);
g.drawString(Str,20,15);
Str = rand.substring(2,3);
g.drawString(Str,35,18);

Str = rand.substring(3,4);
g.drawString(Str,45,15);

// 随机产生88个干扰点,使图象中的认证码不易被其它程序探测到
Random random = new Random();
for (int i=0;i<88;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());
%>

Java生成图片验证码(有点仿QQ验证码的意思)

看了挺多图片验证码的代码,感觉没什么长的好看点的,就自己动手写了个,写完发现跟QQ的有几分相似,比较满意。 功能包括:自定义图片尺寸和字符长度,随机背景颜色和字符颜色,随机字符偏移角度,字符平滑边缘,...
  • ruixue0117
  • ruixue0117
  • 2014年04月02日 23:32
  • 64161

生成验证码的几种方式

1,在jsp页面中直接生成验证码 //image.jsp
  • yhzhaohy
  • yhzhaohy
  • 2016年09月04日 20:06
  • 8184

C#-ASP.NET 自动生成验证码

string code = CreateRandomCode(5); TempData["SecurityCode"] = code; return F...
  • wpg_boke
  • wpg_boke
  • 2016年08月13日 22:50
  • 197

Web---图片验证码生成教程详解-从简单到复杂-从本地到前后台

首先,我们先来看本地如何生成图片验证码的,再来写输出到网页的验证码如何实现。先来看最简单的—实现的功能是,将一个字符串变成图片写入到文件中实现代码:package cn.hncu.img;import...
  • qq_26525215
  • qq_26525215
  • 2016年07月18日 00:13
  • 6820

C#随机生成验证码方法

using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using S...
  • Denghejing
  • Denghejing
  • 2016年07月10日 15:40
  • 3779

C# MVC 生成图片验证码

Controller using System; using System.Collections.Generic; using System.Linq; using System.Web; usin...
  • KingCruel
  • KingCruel
  • 2016年06月17日 11:11
  • 2823

用python生成验证码图片

引入 基本上大家使用每一种网络服务都会遇到验证码,一般是网站为了防止恶意注册、发帖而设置的验证手段。其生成原理是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR)。下面就...
  • Pwiling
  • Pwiling
  • 2016年01月28日 12:11
  • 6900

python代码生成验证码

python代码生成验证码import randomfrom PIL import Image from PIL import ImageDraw from PIL import ImageFilte...
  • qq_33689414
  • qq_33689414
  • 2016年10月20日 19:43
  • 979

Java代码生成图片验证码实现

介绍一个使用Java代码生成随机图片验证码的示例 Java代码随机生成图片验证码 package com.rchm.util.images; import java.awt.Color; i...
  • rchm8519
  • rchm8519
  • 2015年04月16日 21:44
  • 15535

js生成验证码并验证

js导包test var code ; //在全局定义验证码 //产生验证码 ...
  • Inuyasha1121
  • Inuyasha1121
  • 2016年04月08日 15:08
  • 4977
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP页面验证码生成
举报原因:
原因补充:

(最多只允许输入30个字)