今天做项目需要到了验证码,以对注册和登录用户进行验证。
下面是网上的一个4位数字案例,写得清晰易懂,我后面也稍作修改,变成了简单的加法算术验证。存在博客,以备后续项目需要。
<%@ page contentType="image/jpeg" language="java"
import="java.util.*,java.awt.*,java.awt.image.*,javax.imageio.*"
pageEncoding="utf-8"%>
<%!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);
}%>
<%
//设置页面不缓存
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-catch");
response.setDateHeader("Expires", 0);
//在内存中创建图象
int width = 60;
int height = 20;
BufferedImage image =