`

validate code

阅读更多

<%@ page contentType="image/jpeg;charset=GBK" %>
<%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%>
<%@ page import="com.sun.image.codec.jpeg.*"%>

<%!
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);
        }
%>

<%

out.clear();  //加上这句  
out = pageContext.pushBody(); //还有这句就OK了  
//设置页面不缓存
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);

// 获取图形上下文
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(new Color());
//g.drawRect(0,0,width-1,height-1);


// 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到
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);
}

// 取随机产生的认证码(4位数字)
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);
}
// 将认证码存入SESSION
session.setAttribute("rand",sRand);
// 图象生效
g.dispose();
// 输出图象到页面
//ImageIO.setUseCache(true);
ServletOutputStream  stream = null ;
stream = response.getOutputStream();
ImageIO.write(image, "JPEG",stream);

%>

 

 

在页面表单中添加一下语句

验 证 码:<html:text property="checkcode"></html:text><img src="image.jsp"/>

即可完成

分享到:
评论

相关推荐

    validate code

    标题 "validate code" 指的是验证代码的过程,这通常涉及到软件开发中的代码质量检查、错误检测和预防。在这个场景中,"validate code" 可能是指验证输入数据的有效性,确保程序按照预期运行,或者是指对源码进行...

    验证码生成器validate-code-tool-0.0.2

    验证码生成器validate-code-tool-0.0.2是一款专门用于创建网页中安全验证图像的工具。这个工具的主要目的是为了防止自动化的机器人或者恶意脚本在网站上进行非法操作,如批量注册、刷票等。它通过生成随机的、难以被...

    Validate_code.rar_struts valida_struts valida_struts validate_v

    `Validate_code.rar_struts`可能是一个包含Struts验证框架的示例项目,其中包含了必要的配置文件、Java类和资源文件。这个项目的名称暗示了它可能用于演示如何在Struts应用中使用验证代码。 `www.pudn.com.txt`可能...

    jquery validate例子

    &lt;script src="https://code.jquery.com/jquery-3.x.x.min.js"&gt;&lt;/script&gt; &lt;script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.x/dist/jquery.validate.min.js"&gt; ``` 接下来,我们来了解一下jQuery ...

    jq.validate文件

    &lt;script src="https://code.jquery.com/jquery-3.x.x.min.js"&gt;&lt;/script&gt; &lt;script src="js/jquery.validate.js"&gt; ``` 2. **基本用法**:在HTML表单中,为需要验证的输入元素添加`required`属性,然后在文档加载完成...

    jQuery的validate插件使用整理

    &lt;script src="https://code.jquery.com/jquery-3.x.y.min.js"&gt;&lt;/script&gt; &lt;script src="js/jquery.validate.min.js"&gt; ``` ### 2. 基本用法 在HTML中,为需要验证的表单添加`id`属性,然后在JavaScript中初始化...

    jQuery.validate.js

    &lt;script src="https://code.jquery.com/jquery-3.x.y.min.js"&gt;&lt;/script&gt; &lt;script src="path/to/jQuery.validate.js"&gt; ``` 接着,为需要验证的表单添加`id`属性,并使用jQuery的`.validate()`方法进行初始化: ```...

    jquery的validate方法运用

    &lt;script src="https://code.jquery.com/jquery.js"&gt;&lt;/script&gt; &lt;script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.3/dist/jquery.validate.min.js"&gt; ``` 接下来,对表单启用验证非常简单,只需要...

    jquery validate依赖包及其帮助文档.rar

    &lt;script src="https://code.jquery.com/jquery.js"&gt;&lt;/script&gt; &lt;script src="jQuery.validate.js_veryhuo.com"&gt;&lt;/script&gt; $(document).ready(function () { $('#myForm').validate({ rules: { username: ...

    jquery.validate 使用

    &lt;script src="https://code.jquery.com/jquery-3.6.0.min.js"&gt;&lt;/script&gt; &lt;script src="path/to/jquery.validate.min.js"&gt; ``` 2. 初始化验证 接着,为需要验证的表单添加`id`属性,并在JavaScript中初始化验证: `...

    jquery validate (弹框)

    &lt;script src="https://code.jquery.com/jquery-3.x.x.min.js"&gt;&lt;/script&gt; &lt;script src="path/to/jquery.validate.min.js"&gt; ``` 2. **基本使用**:在需要验证的表单上应用`validate()`方法,如: ```javascript ...

    jQuery Validate

    &lt;script src="https://code.jquery.com/jquery-3.x.y.min.js"&gt;&lt;/script&gt; &lt;script src="path/to/jquery.validate.min.js"&gt; ``` ### 2. 基本用法 要激活验证,你需要在表单元素上添加`id`或`class`,然后在脚本中...

    jQuery validate框架的个性化验证

    &lt;script src="https://code.jquery.com/jquery.js"&gt;&lt;/script&gt; &lt;script src="js/jquery.validate.min.js"&gt; &lt;!-- 表单元素 --&gt; $(document).ready(function() { $('#myForm').validate(); }); ``` 2. ...

    jquery-validate 验证插件

    &lt;script src="https://code.jquery.com/jquery-3.6.0.min.js"&gt;&lt;/script&gt; &lt;script src="jquery.validate.min.js"&gt; 用户名"&gt; 邮箱"&gt; 密码"&gt; 提交 $(document).ready(function() { $('#myForm')....

    jquery-validate前台验证框架,带详细使用方法

    &lt;script src="https://code.jquery.com/jquery-3.6.0.min.js"&gt;&lt;/script&gt; &lt;script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.3/dist/jquery.validate.min.js"&gt; ``` 2. **基本配置与初始化** 要...

    validate 通用Ajax无刷新表单验证类(JavaScript)

    在`codefans.net`这个文件中,可能包含了`validate`类的源代码和其他相关示例或文档,供开发者学习和参考。通过深入理解并实践这些内容,开发者可以更好地掌握`validate`类的使用方法,提高其在实际项目中的应用能力...

    jquery.validate1.7验证插件最新版

    &lt;script src="https://code.jquery.com/jquery-1.x.min.js"&gt;&lt;/script&gt; &lt;script src="jquery.validate.1.7.min.js"&gt; ``` ### 三、基本用法 要对一个表单启用验证,只需在表单元素上添加`class="validate"`,然后...

    jquery-form-validate

    &lt;script src="https://code.jquery.com/jquery-3.x.y.min.js"&gt;&lt;/script&gt; &lt;script src="jquery-form-validation-1.2.0/jquery.validate.min.js"&gt; 用户名"&gt; 邮箱"&gt; 提交 $(document).ready(function() { ...

Global site tag (gtag.js) - Google Analytics