`
yangmeng_3331
  • 浏览: 92157 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

JSP中验证码

    博客分类:
  • JSP
阅读更多
//设置页面不缓存
		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
		HttpSession session = request.getSession();
		session.setAttribute("rand",sRand);


		// 图象生效
		g.dispose();

		// 输出图象到页面
		ImageIO.write(image, "JPEG", response.getOutputStream());


public 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);
}


Jsp页面<img src=”servlet/mingzi” >

如要实现单击图片更换验证码在js中img.src="servlet/mingzi?i="+ Math.random();即可
分享到:
评论

相关推荐

    一个jsp中文验证码

    jsp中文验证码,能实现中文字的验证码,非常不错。

    jsp验证码,jsp中文验证码,数字验证码,汉字验证码

    jsp验证码,jsp中文验证码,数字验证码,汉字验证码

    jsp 中文验证码-源码

    ### jsp中文验证码实现原理与源码解析 #### 一、引言 随着网络技术的发展,网站的安全性问题越来越受到重视。验证码作为一种简单而有效的安全措施,在用户登录、注册等环节广泛使用。本文将深入探讨一种基于JSP的...

    JSP 中文验证码 实现方法

    JSP 中文验证码 实现方法 JSP 中文验证码 实现方法

    jsp 中文验证码 源码

    对于"jsp 中文验证码 源码"这个主题,我们将深入探讨如何在JSP(JavaServer Pages)环境中生成具有中文字符的随机验证码。 首先,JSP是Java的一种视图技术,它允许开发人员将动态代码嵌入到HTML、XML或其他标记语言...

    JSP中文验证码(源码)

    ### JSP中文验证码实现原理与源码解析 #### 一、引言 在现代Web应用中,验证码是一种常见的用户交互安全机制,用于区分用户是人类还是自动化程序。本文将详细介绍一个基于Java Server Pages (JSP)技术实现的中文...

    Jsp中验证码的编写

    在JSP(Java Server Pages)环境中实现验证码生成与验证,是确保网站安全的重要环节之一。根据给定的文件信息,我们可以详细解析其中涉及的关键知识点。 ### JSP中的验证码编写 #### 验证码生成 验证码生成主要...

    jsp java 生成中文验证码

    在这个场景中,我们关注的是在JSP(Java Server Pages)和Java环境中生成中文验证码的技术。 首先,`jsp java 生成中文验证码`这个标题暗示我们要讨论如何在JSP应用中使用Java来创建包含中文字符的验证码。JSP是...

    jsp 中验证码的实现

    在本篇中,我们将详细探讨如何在Java Server Pages(JSP)环境中实现验证码功能。 验证码的主要目的是区分人类用户与机器,确保只有前者能进行特定的操作,比如注册、登录或提交表单。常见的验证码类型有图像验证码...

    jsp验证码——数字

    ### jsp验证码——数字 #### 知识点详解 ##### JSP 验证码实现原理与过程 在本文档中,我们关注一个基于JavaServer Pages (JSP) 的数字验证码生成示例。此示例主要涉及到JSP页面的配置、Java图形处理库的使用以及...

    jsp图形验证码源码

    在这个案例中,我们将用JSP来生成和处理图形验证码。 图形验证码的主要功能包括: 1. **生成随机字符**:在服务器端,我们需要生成一组随机的字母或数字作为验证码,通常长度为4到6位。这可以通过Java的`Random`类...

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

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

    JSP图形验证码项目

    在这个项目中,我们重点探讨如何使用JSP来创建用户登录界面,并结合图形验证码来防止恶意自动登录尝试,从而保护系统的安全性。 首先,JSP是Java平台上的动态网页技术,它允许开发人员在HTML或者XML文档中嵌入Java...

    【分享】JSP语音验证码接口demo

    在这个【分享】JSP语音验证码接口demo中,我们聚焦于如何利用JSP技术实现一个高效、可靠的语音验证码功能。 1. **JSP基础**: - **基本原理**:JSP是一种服务器端脚本语言,它将HTML、CSS和JavaScript等前端元素与...

    JSP网页中的验证码

    2. **JSP验证码实现步骤**: - **生成验证码**:在服务器端,可以使用Java的`Random`类生成随机字符串,然后存入session中。 - **展示验证码**:将生成的验证码通过JSP页面显示出来,如果是图片验证码,需要使用...

    jsp验证码学习代码

    ### jsp验证码学习代码 #### 一、简介 在web应用程序的安全性方面,验证码是一种常见的保护机制,可以有效防止机器自动填写表单等自动化攻击行为。对于使用Java Server Pages(JSP)技术进行Web开发的技术人员来说...

    jsp中文验证码

    很实用的jsp中文验证,一看就会! 适合各类开发人员使用!

    JSP编程验证码登陆系统

    在这个"JSP编程验证码登录系统"中,我们将深入探讨如何使用JSP来创建一个安全的登录页面,其中包含验证码功能,以防止恶意的自动化尝试或机器人攻击。 验证码(CAPTCHA)是"Completely Automated Public Turing ...

    JSP实现的验证码, 验证码

    在JSP(JavaServer Pages)中实现验证码,主要是为了确保用户是真实的活生生的人,而不是机器,以此增加网站的安全性。这里我们将深入探讨JSP实现验证码的原理、步骤以及涉及到的相关知识点。 验证码的基本流程包括...

Global site tag (gtag.js) - Google Analytics