jsp怎么判断验证码输入正确

jsp怎么写验证码

1. JSP实现验证码 代码怎么写

一个小示例看一下。

验证码 code2.jsp <%@ page language="java" import="java.util.*,java.awt.*,java.awt.image.*,javax.imageio.*" pageEncoding="gb2312"%> <%try{ response.setHeader("Pragma","no-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires",0); response.setContentType("image/jpeg"); int width = 80; int height = 20; char mapTable[] = {'0','1', '2', '3', '4', '5', '6', '7', '8', '9'}; 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); // 随机产生的验证码 String strEnsure = ""; // 4代表4位验证码,如果要生成等多位的验证码 ,则加大数值 for (int i = 0; i < 5; i++) { strEnsure += mapTable[(int) (mapTable.length * Math.random())]; } // 将验证码显示在图像中,如果要生成更多位的验证码,增加drawString语句 g.setColor(Color.red); g.setFont(new Font("Atlantic Inline", Font.PLAIN, 18)); String str = strEnsure.substring(0, 1); g.drawString(str, 8, 17); str = strEnsure.substring(1, 2); g.drawString(str, 20, 15); str = strEnsure.substring(2, 3); g.drawString(str, 35, 18); str = strEnsure.substring(3, 4); g.drawString(str, 50, 15); str = strEnsure.substring(4, 5); g.drawString(str, 65, 18); // 随机产生10个干扰点 Random random = new Random(); for (int i = 0; i < 10; i++) { int x = random.nextInt(width); int y = random.nextInt(height); g.drawOval(x, y, 1, 1); } // 释放图形上下文 g.dispose(); session.setAttribute("yanzhengma",strEnsure);//将验证码写入到session ImageIO.write(image, "JPEG", response.getOutputStream()); out.clear(); }catch(Exception e){ response.sendRedirect("log.jsp"); }%> 在log.jsp里 验证 看不清,换一张。

2. 在java页面上,用jsp,怎样写一个验证码

//验证码生成页面<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><%@ page import = " java.awt.*,java.awt.image.*,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 );}session.setAttribute("vcode" ,sRand);g.dispose();ImageIO.write(image, "jpg" ,os);os.flush();os.close();os = null ;response.flushBuffer();out.clear();out = pageContext.pushBody();}catch (IllegalStateException e){System.out.println(e.getMessage());e.printStackTrace();} %>//验证码使用页面<%@ page language="java" import="java.util.*" pageEncoding="gbk"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> My JSP 'index.jsp' starting page <meta >。

3. Jsp验证码怎么写

验证码: 换一张 你是不是不知道那个图片怎么换啊?我当时也找了好多改变图片的方法,利用系统时间是最好的解决办法。

4. jsp中显示验证码的代码怎么写

import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO;/*生成验证码图片*/ public class MakeCertPic { //验证码图片中可以出现的字符集,可以根据需要修改 private char mapTable[]={ 'a','b','c','d','e','f', 'g','h','i','j','k','l', 'm','n','o','p','q','r', 's','t','u','v','w','x', 'y','z','0','1','2','3', '4','5','6','7','8','9' };/* 功能:生成彩色验证码图片 参数wedth为生成图片的宽度,参数height为生成图片的高度,参数os为页面的输出流*/ public String getCertPic(int width,int height,OutputStream os){ if(width<=0) width=60; if(height<=0) 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); //随机产生的验证码 String strEnsure = ""; //4代表4为验证码,如果要产生更多位的验证码,则加大数值 for(int i = 0;i<4;++i){ strEnsure += mapTable[(int) (mapTable.length*Math.random())]; } //将认证码显示到图像中,如果要生成更多位的验证码,增加drawString语句 g.setColor(Color.black); g.setFont(new Font("Atlantic Inline",Font.PLAIN,18)); String str = strEnsure.substring(0,1); g.drawString(str,8,17); str = strEnsure.substring(1,2); g.drawString(str, 20, 15); str = strEnsure.substring(2,3); g.drawString(str, 35, 18); str = strEnsure.substring(3,4); g.drawString(str, 45, 15); //随机产生15个干扰点 Random rand = new Random(); for(int i=0; i<10; i++){ int x = rand.nextInt(width); int y = rand.nextInt(height); g.drawOval(x,y,1,1); } //释放图形上下文 g.dispose(); try{ //输出图形到页面 ImageIO.write(image, "JPEG", os); }catch (IOException e){ return ""; } return strEnsure; } } makeCertPic.jsp页面用于调用生成验证码图片的JavaBean,并在客户端显示,源代码如下:<%@page contentType="image/jpeg" %><%@page language="java" pageEncoding="utf-8"%><% String str = image.getCertPic(0,0,response.getOutputStream()); //将验证码存入session中 session.setAttribute("certCode",str);%> 下边是登录页面:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><meta ; charset=UTF-8">验证码测试登录页面 <body>

5. JSP实现验证码 代码怎么写

一个小示例看一下。

验证码 code2.jsp <%@ page language="java" import="java.util.*,java.awt.*,java.awt.image.*,javax.imageio.*" pageEncoding="gb2312"%><%try{ response.setHeader("Pragma","no-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires",0); response.setContentType("image/jpeg"); int width = 80; int height = 20; char mapTable[] = {'0','1', '2', '3', '4', '5', '6', '7', '8', '9'}; 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); // 随机产生的验证码 String strEnsure = ""; // 4代表4位验证码,如果要生成等多位的验证码 ,则加大数值 for (int i = 0; i < 5; i++) { strEnsure += mapTable[(int) (mapTable.length * Math.random())]; } // 将验证码显示在图像中,如果要生成更多位的验证码,增加drawString语句 g.setColor(Color.red); g.setFont(new Font("Atlantic Inline", Font.PLAIN, 18)); String str = strEnsure.substring(0, 1); g.drawString(str, 8, 17); str = strEnsure.substring(1, 2); g.drawString(str, 20, 15); str = strEnsure.substring(2, 3); g.drawString(str, 35, 18); str = strEnsure.substring(3, 4); g.drawString(str, 50, 15); str = strEnsure.substring(4, 5); g.drawString(str, 65, 18); // 随机产生10个干扰点 Random random = new Random(); for (int i = 0; i < 10; i++) { int x = random.nextInt(width); int y = random.nextInt(height); g.drawOval(x, y, 1, 1); } // 释放图形上下文 g.dispose(); session.setAttribute("yanzhengma",strEnsure);//将验证码写入到session ImageIO.write(image, "JPEG", response.getOutputStream()); out.clear(); }catch(Exception e){ response.sendRedirect("log.jsp"); }%> 在 log.jsp里 验证 jsp alt="看不清"/>jsp';return false;">看不清,换一张。

6. Jsp验证码怎么写

<tr>

<td valign="middle" align="right">

验证码:

<img id="num" src="checkCode" />

<a href="javascript:;"

onclick="document.getElementById('num').src = 'checkCode?'+(new Date()).getTime()">;换一张</a>

</td>

<td valign="middle" align="left">

<input type="text" class="inputgri" name="number" />

</td>

</tr>

你是不是不知道那个图片怎么换啊?我当时也找了好多改变图片的方法,利用系统时间是最好的解决办法

7. 如何用JSP生成验证码

<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@ page import="java.awt.*" %><%@ page import="java.awt.image.*" %><%@ page import="java.util.*" %><%@ page import="javax.imageio.*" %><%! Color getRandColor(int fc,int bc){ Random r = new Random(); if(fc > 255) fc = 255; if(bc > 255) bc = 255; int red = fc + r.nextInt(bc - fc); int green = fc + r.nextInt(bc - fc); int blue = fc + r.nextInt(bc - fc); return new Color(red,green,blue); }%><% //设置页面不缓存 response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0);//下面开始了--生成图像 Random r = new Random(); int width = 60,height = 20; BufferedImage pic = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB); Graphics gc = pic.getGraphics(); gc.setColor(getRandColor(200,250)); gc.fillRect(0, 0, width, height); gc.setFont(new Font("Times New Roman",Font.PLAIN,18)); gc.setColor(getRandColor(160,200)); for(int i=0;i<200;i++){ int x1 = r.nextInt(width); int y1 = r.nextInt(height); int x2 = r.nextInt(15); int y2 = r.nextInt(15); gc.drawLine(x1, y1, x2, y2); } gc.setColor(getRandColor(120,240)); for(int i=0;i<100;i++){ int x = r.nextInt(width); int y = r.nextInt(height); gc.drawOval(x, y, 0,0); } String rs=""; String rn=""; for(int i = 0;i<4;i++){ rn = String.valueOf(r.nextInt(10)); rs += rn; gc.setColor(new Color(20+r.nextInt(110),20+r.nextInt(110),20+r.nextInt(110))); gc.drawString(rn,13*i+6,16); } gc.dispose(); try{ session.setAttribute("code", rs);//设置session的属性code为生成的验证码(String类型),JSP中一般靠session等来传递并获得参数 }catch(Throwable t){ getServletContext().log(t.getMessage());//这里是写log,但要抓异常 } ImageIO.write(pic,"JPEG",response.getOutputStream());//输出图片到一页面,就是流 out.clear();//后面一定要关闭流,因为在其他页面会有冲突 out = pageContext.popBody();%>上面时code.jsp另一页面只写一句话就能看到图片:jsp">因为code.jsp可以向某个jsp页面输送一个图片,当然是验证码图片~。

8. 如何用JSP生成验证码

<%@ page language="java" contentType="text/html; charset=gbk"pageEncoding="GBK"%> <%@ page import="java.awt.*" %> <%@ page import="java.awt.image.*" %> <%@ page import="java.util.*" %> <%@ page import="javax.imageio.*" %> <%! Color getRandColor(int fc,int bc){ Random r = new Random(); if(fc > 255) fc = 255; if(bc > 255) bc = 255; int red = fc + r.nextInt(bc - fc); int green = fc + r.nextInt(bc - fc); int blue = fc + r.nextInt(bc - fc); return new Color(red,green,blue); } %><% //设置页面不缓存 response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); //下面开始了--生成图像 Random r = new Random(); int width = 60,height = 20; BufferedImage pic = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB); Graphics gc = pic.getGraphics(); gc.setColor(getRandColor(200,250)); gc.fillRect(0, 0, width, height); gc.setFont(new Font("Times New Roman",Font.PLAIN,18)); gc.setColor(getRandColor(160,200)); for(int i=0;i<200;i++){ int x1 = r.nextInt(width); int y1 = r.nextInt(height); int x2 = r.nextInt(15); int y2 = r.nextInt(15); gc.drawLine(x1, y1, x2, y2); } gc.setColor(getRandColor(120,240)); for(int i=0;i<100;i++){ int x = r.nextInt(width); int y = r.nextInt(height); gc.drawOval(x, y, 0,0); } String rs=""; String rn=""; for(int i = 0;i<4;i++){ rn = String.valueOf(r.nextInt(10)); rs += rn; gc.setColor(new Color(20+r.nextInt(110),20+r.nextInt(110),20+r.nextInt(110))); gc.drawString(rn,13*i+6,16); } gc.dispose(); try{ session.setAttribute("code", rs);//设置session的属性code为生成的验证码(String类型),JSP中一般靠session等来传递并获得参数 }catch(Throwable t){ getServletContext().log(t.getMessage());//这里是写log,但要抓异常 } ImageIO.write(pic,"JPEG",response.getOutputStream());//输出图片到一页面,就是流 out.clear();//后面一定要关闭流,因为在其他页面会有冲突 out = pageContext.popBody(); %> 上面时code.jsp 另一页面只写一句话就能看到图片: 因为code.jsp可以向某个jsp页面输送一个图片,当然是验证码图片~。

jsp怎么写验证码

转载请注明出处育才学习网 » jsp怎么判断验证码输入正确

知识

罗梅芬用日文怎么写(罗钰潇日语怎么写)

阅读(21424)

本文主要为您介绍罗梅芬用日文怎么写,内容包括伊蕾娜日语怎么写,王雪菲用日文怎么说,张佳怡在日语中怎么写啊怎么读啊。罗 ら ラ ra钰 ぎょく ギョク gyoku潇 しょう シヨウ shou第一列:日语汉字,写法同汉字,都要用繁体,这三个都挺难写的,看

知识

邓先生的英文怎么写(1~40的英文怎么说)

阅读(10439)

本文主要为您介绍邓先生的英文怎么写,内容包括“邓先生”用英语怎么写,1~40的英文怎么说,漂亮英文beautiful缩写怎么写。1 one 2 two 3 three 4 four 5 five 6 six 7 seven 8 eight 8 nine 10 te

知识

一个人布满皱纹怎么写(描写人物皱纹的句子)

阅读(9513)

本文主要为您介绍一个人布满皱纹怎么写,内容包括描写人物皱纹的句子,描写人物皱纹的句子,皱纹怎么描写。、老人脸上布满了皱纹,那一条条曲折不均的像是墙上斑驳的印迹,爬满了面容,留下了岁月的痕迹。2、外祖父是一位年过六旬的白发老人。在他

知识

登录接口怎么写(php登录的接口怎么写)

阅读(7758)

本文主要为您介绍登录接口怎么写,内容包括php登录的接口怎么写,网页登陆接口怎么做,网站登录接口程序怎么做。PHP 接口 接口 使用接口(interface),你可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。我们可以通过int

知识

档案奖惩情况怎么写(奖惩情况怎么写)

阅读(9599)

本文主要为您介绍档案奖惩情况怎么写,内容包括奖惩情况怎么写,个人简历及奖惩情况怎么填写,个人简历里面奖惩情况怎么写。在简历里的“奖励”部分,列出与你所获得的并与你的求职目标相关的荣誉、奖励和奖金。你既可以按时间顺序排列,也可以按

知识

头孢克肟拼音怎么写(头孢克肟的肟念什么)

阅读(8000)

本文主要为您介绍头孢克肟拼音怎么写,内容包括头孢克肟片全名拼音,头孢克肟片全名拼音,头孢克肟的肟念什么。肟[wò] :是含有羰基的醛、酮类化合物与羟胺作用而生成的有机化合物,可以参与许多有机化学反应,例如经典的Beckmann重排就是肟为底

知识

一库搜用日语怎么写(日语一库是什么意思)

阅读(7988)

本文主要为您介绍一库搜用日语怎么写,内容包括日语大神来,看动漫里的主人公说一句:恰,一库搜这是什么意思,一库一库;一搜库这两个日语是什么意思怎么写,看片都有“一库”(日语)是什么意。一库的意思就是“出发,出去”的意思。日语「行く」的音译

知识

外租无人机广告怎么写(植保无人机广告语)

阅读(6997)

本文主要为您介绍外租无人机广告怎么写,内容包括求一个无人机创意广告词谢谢巨友们了,求一关于无人机的广告标语,求一关于无人机的广告标语我们公司是做无人机的,新成立的公司,求。DJI大疆创新研发的的MG-1农业植保机专为农村作业环境设计,

知识

河南话que怎么写(河南话的nenna怎么写)

阅读(6530)

本文主要为您介绍河南话que怎么写,内容包括que怎么写,河南话的nenna怎么写,que怎么写。尿一壶(niào yī hú)关系密切,观点一致。例:“他俩今天尿一壶啦。”●尿(niào)⑴、从尿道排泄的液体。⑵、排泄小便。⑶、不放

知识

国学经文的论文怎么写(国学征文该怎么写)

阅读(7112)

本文主要为您介绍国学经文的论文怎么写,内容包括国学征文该怎么写,弟子规的400论文,关于国学经典的征文怎么写。“子曰:“温故而知新,可以为师”……小时,总是觉得国学就是没用的,古人写的话,我们还需要背,每次老师教给我们时,我总是会让思想开一

知识

化学实验总结怎么写(化学实验报告小结怎么写)

阅读(5396)

本文主要为您介绍化学实验总结怎么写,内容包括化学实验总结怎么写,化学实验报告小结怎么写,化学实验小结怎么写。化学实验报告的书写: 一般情况下化学实验报告是根据实验步骤和顺序从七方面展开来写的: 1.实验目的:即本次实验所要达到的目标或

知识

蝴蝶豌豆拼音怎么写(豌豆的拼音是什么)

阅读(5824)

本文主要为您介绍蝴蝶豌豆拼音怎么写,内容包括蝴蝶怎么拼音的,豌豆的拼音是什么,蝴蝶的拼音是什么。豌豆的拼音是[wān dòu]。豌豆是豆科一年生攀援草本,高0.5-2米。全株绿色,光滑无毛,被粉霜。叶具小叶4-6片,托叶心形,下缘具

知识

海绵宝宝用英文怎么说(海绵宝宝用英文怎么说)

阅读(6509)

本文主要为您介绍海绵宝宝用英文怎么说,内容包括海绵宝宝用英语怎么说,海绵宝宝用英文怎么说,海绵宝宝英文名是什么。1. SPONGEBOB SQUAREPANTS 近期很夯的一步卡通影片《海绵宝宝》(SpongeBob SquarePants)是一系

知识

茶盏怎么用(茶盏在茶道中干嘛用)

阅读(5421)

本文主要为您介绍茶盏怎么用,内容包括茶盏怎么用我要写一篇200字左右的茶盏的使用说明,求指教,茶盏在茶道中干嘛用,问一下斗笠盏如何使用现在是不是很少有人使用它,它的意义。苏东坡的名句"从来佳茗似佳人",典型地代表了唐宋及以后的文人墨客,

知识

thinkpad小红点怎么用(怎么学习使用thinkpad小红点)

阅读(7581)

本文主要为您介绍thinkpad小红点怎么用,内容包括怎么学习使用thinkpad小红点,thinkpad小红点怎么用,求教:THINKPAD的小红点使用方法。Thinkpad 小红点最高效的使用方法为:左手拇指按左键,无操作时在左键待命2、右手拇指按右键,同时兼按空格键及