知识大全 使用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>        &nbsp;        </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>        &nbsp;        </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>        &nbsp;        </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>        &nbsp;        </td>        <td>        <input type= button value= 提交 onclick= doSubmit() >        </td>        </tr>        </table>        </form>        </body></>        )运行结果

cha138/Article/program/Java/hx/201311/27179

相关参考

知识大全 支持中文的验证码生成程序.

  一个验证图形生成程序支持中文的验证码生成程序写的时候没有仔细看可能有小问题但是运行没有任何问题  使用方法:   <tr><td>&n

知识大全 PHP生成雪花背景的网站验证码

PHP生成雪花背景的网站验证码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  以下为引用的内容&

知识大全 网络编程中网页中的验证码生成

  今天我们直接上代码来介绍一下关于网络编程中网页中的验证码生成的方法  <%  //nocache指示请求或响应消息不能缓存  responsesetHeader(CacheControlno

知识大全 c#生成无重复的验证码

  最近公司项目做了代金卷的业余需要生成随机的位数字字母组合的条码现贴出种程序源码供大家学习和参考  方法  privatestaticchar[]constant=abcdefghijklmnopq

知识大全 PHP5中GD库生成图形验证码(有汉字)

PHP5中GD库生成图形验证码(有汉字)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!本文为大家介

知识大全 JSP验证码代码

JSP验证码代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  生成有个随机数字和杂乱背景的图片

知识大全 JSP验证码大全之验证码使用与乱码解决

JSP验证码大全之验证码使用与乱码解决  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文中介绍

知识大全 ASP.NET验证码技术

ASP.NET验证码技术  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  验证码技术是目前很多WE

知识大全 ASP.NET 做验证码

ASP.NET做验证码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  显示验证码的界面前台<

知识大全 淘宝网里那么多卖验证码的,是怎么做到的,难道有那么多个手机吗?而且验证码价格那么贵,感觉好坑阿,谁知道?

淘宝网里那么多卖验证码的,是怎么做到的,难道有那么多个手机吗?而且验证码价格那么贵,感觉好坑阿,谁知道?那些卖验证码的当然不是有那么多手机号,这些都是卡商提供的,不信你可以拨打一下号码,要不就是空号,