知识大全 使用kaptcha生成验证码
Posted 字符
篇首语:仓廪实则知礼节,衣食足则知荣辱。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 使用kaptcha生成验证码相关的知识,希望对你有一定的参考价值。
kaptcha是一个简单好用的验证码生成工具 通过配置 可以自己定义验证码大小 颜色 显示的字符等等 下载kaptcha 新建一个Web项目 并将下载压缩包中的kaptcha jar放在项目的WEB INF/lib目录下 配置web xml文件 <?xml version= encoding= UTF ?><web app version= xmlns= xmlns:xsi= instance xsi:schemaLocation= app_ _ xsd > <display name></display name> <! kaptcha验证码配置 > <servlet> <! 生成图片的Servlet > <servlet name>Kaptcha</servlet name> <servlet class>de kaptcha servlet KaptchaServlet</servlet class> <! 是否有边框 > <init param> <param name>kaptcha border</param name> <param value>no</param value> </init param> <! 字体颜色 > <init param> <param name>kaptcha tlor</param name> <param value>red</param value> </init param> <! 图片宽度 > <init param> <param name>kaptcha image width</param name> <param value> </param value> </init param> <! 使用哪些字符生成验证码 > <init param> <param name>kaptcha textproducer char string</param name> <param value>ACDEFHKPRSX </param value> </init param> <! 图片高度 > <init param> <param name>kaptcha image height</param name> <param value> </param value> </init param> <! 字体大小 > <init param> <param name>kaptcha textproducer font size</param name> <param value> </param value> </init param> <! 干扰线的颜色 > <init param> <param name>lor</param name> <param value>black</param value> </init param> <! 字符个数 > <init param> <param name>kaptcha textproducer char length</param name> <param value> </param value> </init param> <! 使用哪些字体 > <init param> <param name>kaptcha textproducer font names</param name> <param value>Arial</param value> </init param> </servlet> <! 映射的url > <servlet mapping> <servlet name>Kaptcha</servlet name> <url pattern>/Kaptcha jpg</url pattern> </servlet mapping> <wele file list> <wele file>index jsp</wele file> </wele file list></web app> 显示验证码的页面index jsp <%@ page language= java contentType= text/; charset=UTF pageEncoding= UTF %><!DOCTYPE PUBLIC //W C//DTD HTML Transitional//EN ><><head><meta equiv= Content Type content= text/; charset=UTF ><title>验证码</title><script type= text/javascript > //点击切换验证码 function changeVerifyCode(img) img src = Kaptcha jpg? +Math floor(Math random()* ) </script></head><body> <p> <form action= result jsp > <table> <tr> <td> </td> <td> <img src= Kaptcha jpg onclick= changeVerifyCode(this) style= cursor: pointer; > </td> </tr> <tr> <td> 请输入验证码 </td> <td> <input type= text name= verifyCode > </td> </tr> <tr> <td> </td> <td> <input type= submit value= 提交 > </td> </tr> </table> </form> </body></> 运行项目 显示结果
最后加上异步验证 看输入的验证码是否正确 )增加一个验证的Servlet package cn luxh servlet;import java io IOException;import java io PrintWriter;import javax servlet ServletException;import javax servlet HttpServlet;import javax servlet HttpServletRequest;import javax servlet HttpServletResponse;public class VerifyServlet extends HttpServlet public void doGet(HttpServletRequest request HttpServletResponse response) throws ServletException IOException response setContentType( text/;charaset=utf ) response setHeader( pragma no cache ) response setHeader( cache control no cache ) PrintWriter out = null; try //响应数据 String resultData; //获取传过来的验证码 String verifyCode = request getParameter( verifyCode ) System out println( verifyCode +verifyCode) if(verifyCode== ) resultData = N ; else //获取kaptcha生成存放在session中的验证码 String kaptchaValue = (String) request getSession() getAttribute(de kaptcha Constants KAPTCHA_SESSION_KEY) //比较输入的验证码和实际生成的验证码是否相同 if(kaptchaValue = null || kaptchaValue = ||!verifyCode equalsIgnoreCase(kaptchaValue)) resultData = N ; else resultData = Y ; out = response getWriter() out write(resultData) out flush() catch(Exception e) e printStackTrace() finally if(out != null) out close() )在web xml中添加这个Servlet的配置 <! 检查验证码是否输入正确 > <servlet> <servlet name>VerifyServlet</servlet name> <servlet class>cn luxh servlet VerifyServlet</servlet class> </servlet> <servlet mapping> <servlet name>VerifyServlet</servlet name> <url pattern>/VerifyServlet</url pattern> </servlet mapping> )页面index jsp <%@ page language= java contentType= text/; charset=UTF pageEncoding= UTF %><!DOCTYPE PUBLIC //W C//DTD HTML Transitional//EN ><><head><meta equiv= Content Type content= text/; charset=UTF ><title>验证码</title><script type= text/javascript src= $pagntextPath/jquery min js ></script><script type= text/javascript > //点击切换验证码 function changeVerifyCode(img) img src = Kaptcha jpg? +Math floor(Math random()* ) //提交 function doSubmit() var verifyCodeValue = $( #verifyCode ) val() if(verifyCodeValue replace(/\\s/g ) == ) alert( 请输入验证码 ) else //提交前先异步检查验证码是否输入正确 var = $pagntextPath/VerifyServlet?verifyCode= +verifyCodeValue; $ ajax( type: GET url: success:function(returnData) if(returnData!= Y ) alert( 请输入正确的验证码! ) else //验证码正确 进行提交操作 //…… error:function(e) alert(e) ) </script></head><body> <p> <form action= result jsp > <table> <tr> <td> </td> <td> <img src= Kaptcha jpg onclick= changeVerifyCode(this) style= cursor: pointer; > </td> </tr> <tr> <td> 请输入验证码 </td> <td> <input type= text name= verifyCode id= verifyCode > </td> </tr> <tr> <td> </td> <td> <input type= button value= 提交 onclick= doSubmit() > </td> </tr> </table> </form> </body></> )运行结果
cha138/Article/program/Java/hx/201311/27179相关参考
一个验证图形生成程序支持中文的验证码生成程序写的时候没有仔细看可能有小问题但是运行没有任何问题 使用方法: <tr><td>&n
PHP生成雪花背景的网站验证码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 以下为引用的内容&
今天我们直接上代码来介绍一下关于网络编程中网页中的验证码生成的方法 <% //nocache指示请求或响应消息不能缓存 responsesetHeader(CacheControlno
最近公司项目做了代金卷的业余需要生成随机的位数字字母组合的条码现贴出种程序源码供大家学习和参考 方法 privatestaticchar[]constant=abcdefghijklmnopq
PHP5中GD库生成图形验证码(有汉字) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!本文为大家介
JSP验证码代码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 生成有个随机数字和杂乱背景的图片
JSP验证码大全之验证码使用与乱码解决 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文中介绍
ASP.NET验证码技术 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 验证码技术是目前很多WE
ASP.NET做验证码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 显示验证码的界面前台<
知识大全 淘宝网里那么多卖验证码的,是怎么做到的,难道有那么多个手机吗?而且验证码价格那么贵,感觉好坑阿,谁知道?
淘宝网里那么多卖验证码的,是怎么做到的,难道有那么多个手机吗?而且验证码价格那么贵,感觉好坑阿,谁知道?那些卖验证码的当然不是有那么多手机号,这些都是卡商提供的,不信你可以拨打一下号码,要不就是空号,